Kertokaatteen tietäjät liekö mahdollista täyttää webbi sivulla oleva lomake automaattisesti? Esim jollain virmalla on webbitilauslomake jossa tuotteille omat kentät. Onnistuuko noihin kenttiin tietojen täyttäminen esim teksti tiedostosta automaattisesti?
Webbi lomakkeen täyttö
Pietro
3382
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 3
Vanhimmat
Eli onnistuu toki.
Jos haluat esim tietyt rivit tiettyihin kenttiin niin voit käyttää:
$rivi = file("tiedosto.pääte");
// joka siis luo linkin tiedostoon $rivi muuttujan kautta
Lomakkeissa jos et tiedä on siis esim input kentässähän määritellään arvo joka on jo valmiina näin:
Eli jos haluat esim. kolmannen rivin tiedostosta input kenttään niin tee näin:
Jäi tuossa kysymyksessä selventämättä että tämä sivu jota täydennetään ei ole oma vaan ulkopuolinen. Tiedossa on että jos kenttien nimet tiedetään, niin homma on helppo, mutta saako selville ulkopuolisen sivun kenttien nimiä? Entäpä jokin focus homma?
Vastaus ongelmiisi : CURL
Curl lib löytyy php:stä yleensä defaulttina. Kannattaa mennä lukeen niitä curl-faqqeja ohjelman sivuilta.
"mutta saako selville ulkopuolisen sivun kenttien nimiä?"
Oletan että tämä on mallia "haastava" eli kyseisellä webbisivulla ei käytetä sellaisia nimiä jotka voisi ripata suoraan html:sta vaan nimet tuotetaan dynaamisesti.
Ratkaisu:
Hae webbisivu curlilla ja sitten CURL-outputista pitää sitten tietenkin parseroida esiin textfieldien nimet tapauskohtaisesti vaikkapa regexpeillä ja täytellä ne sen mukaan. Tämä eroaa suorasta post-methodista sillä tavoin että tehtävä CURL-post tehdään dynaamisten tietojen perusteella. Tämä toimii jos on toimiakseen; yleensä dynaamisilla siteillä voi edelleenkin tunnistaa textboxit sen mukaan että monesko se on järjestyksessä vaikka sen nimi muuttuisikin. Eli parserointia kehiin.
Jos webbisite sekoittelee kenttien järjestystä ja lisäilee omia hiddeneitä sinne väliin ja nimet ovat täysin kryptattuja ja se mitä mihinkin kohtaan pitäisi kirjoittaa näytetään .gif kuvana niin menee Ihan Vitun Vaikeaksi. (hahaa, itselläni tälläinen toteutus. Kusettaa täysillä kaikkia robotteja.)
"Entäpä jokin focus homma?"
Eli siis jos webbisite siirtää esim. javascriptillä fokuksen johonkin tiettyyn tekstikenttään ja fokus pitäisi tunnistaa... Urgh. Nyt aletaan olla jo siinä vaiheessa että pitäis virtualisoida javascript... ELLEI sitten ole mahdollista parseroida javascriptin uumenista sitä nimeä jolle ajetaan SetFocus():ta - riippuu toteutuksesta - jos tarkistuksia tehdään javaskriptissä on homma vaikea. Mutta jos javascript tuotetaan serveripäässä saattaa olla mahdollista. Muussa tapauksessa ilman True-Ultimate-Guru asennetta CURLaamalla mahdotonta.
Saattaapi olla että fokuksen kaappaaminen olisi mahdollista käyttämällä esim. IE:tä com-objektina. En ole varma, saattaa olla että IE ei sisällä tarpeellista käskykantaa communistina... epäilen näin. Täysfunktionaalinen virtuaaliselain olisi tosiaan mukava juttu mutten ole sellaiseen törmännyt ainakaan vielä.