[ vtl_design @ 15.01.2009. 17:33 ] @
Pozdrav,
Zanima me da li je ikako moguce iz php-a auto fill na nekom drugom sajtu ako se poznaju samo ID-evi textboxova? Npr, ja na svom sajtu kreiram da mi unosi za polje gdje je id = "search" da mi bude npr. "trazi nesto" i da kad kliknem na OK, da mi otvori npr google i u njihovom textboxu za pretragu pise "trazi nesto". Da li je ovo ikako moguce? Dakle da automatski popunjavam polja na BILO KOJEM SAJTU NA NETU, naravno, ako znam ID textboxa tih sajtova. I
Hvala.
[ Nikola Poša @ 15.01.2009. 19:20 ] @
Mislish da ti npr. na pretrazi na tvom sajtu unesesh neshto i kad se to submit-uje da odma' ide redirekcija na npr. Google i da budu izlistani rezultati pretrage za taj upit koji je unet na tvom sajtu? Za tako neshto pored id-a ili name-a polja za pretragu treba da znash i vrednost atributa action tag-a form na stranici tog sajta chiju pretragu hocesh da koristish (ako pretraga na tom sajtu ide preko klasichne forme).

Ako ti je cilj da neko na tvom sajtu mozhe da vrshi pretragu, a da se rezultati dobijaju uz pomoc Google-a, zashto jednostavno ne implementirash Google pretragu, putem AdSense-a, besplatno je...
Kad pretrazhujesh na ovom forumu, takodje imash tu opciju, Google-ES...
[ centaur @ 15.01.2009. 20:13 ] @
Ako ja kapiram sta ti hoces, treba ti cUrl
[ vtl_design @ 15.01.2009. 20:35 ] @
Da, ali samo da POPUNI POLJA NA DRUGOM SAJTU. Nista vise, ne treba vrsiti subimit na tom sajtu! Npr. ja hocu da sa svog sajta posaljem upit koji ce se ispisat na onon jednom jedinom textboxu na www.google.com. Dakle iznad onog buttona "google search" u onom textboxu iznad da pise neka moja rijec koju sam poslao sa svog sajta. I onda ja da rucno kliknem na button "google search" i da mi ispise rezultate za onu rijec koja se vec nalazi na textboxu.
[ stevs986 @ 15.01.2009. 20:44 ] @
Pa u cemu je draz onda ako ne submitujes... :) Ako hoces samo da pise mozes i copy - paste...
[ Nemanja Avramović @ 15.01.2009. 21:07 ] @
Ako samo hoćeš da popuniš polja u browseru na 3rd party sajtu, onda ti verovatno treba JS rešenje ili neka desktop aplikacija - teško ćeš to uraditi sa PHPom.
[ vtl_design @ 15.01.2009. 21:24 ] @
Da tesko.... licno mislim da to uopce nije moguce. Ako neko ima ideju, mislim da bi to bila revolucija jer sam samo vidjao auto-fill toolbare koji se instaliraju na komp da bi ovo mogli radit.
[ ColdKeyboard @ 15.01.2009. 21:57 ] @
Mozda bi to mogao da odradis sa jako malo PHP-a ili skoro nikako ali zato bi ti trebalo dosta dobro poznavanje
JS-a ili recimo neki ajax framework.

Evo kako bi to ja uradio (iako ne vidim neku posebnu primjenu)

Korisnik dodje, ukuca adresu stranice, ID polja i koju vrednost hoce da unese,
Ti sa Iframe (ili moze i ajax loadpage) ucitas tu stranicu a uz pomoc ajax-a radis
search ID-a u tom Iframe (odnosno elemntu u kojem citas tu stranicu) i mijenjas ga tako
sto mijenjas recimo <input name="test"> u <input name="test" value="Nesto sto korisnik posalje">...

Mislim da bi to tako moglo da radi bez problema jer bi JS radio jer si jos uvijek na svom sajtu
a dovlacis stranu stranicu u neki drugi dio i onda radis promjenu...

Druga opcija koja je po meni komplikovanije je sa php-om.
Sta trebas je da uradis fopen() te stranice, sacuvas te podatke u neki $string i onda radis
str_replace() ili preg_replace() tako sto trazis zeljeni ID i uz njega dodajes vrijednost koju je korisnik
naveo da zeli...

Eto naveo sam dva nacina pa koji ti je drazi (citaj: laksi)

p.s. Ako treba pomoc ili pojasnjenje tu sam, a moguce je da sam neku funkciju pogresno spelovao ili pogresno naveo (nisam za svojim racunarom i ne mogu trenutno gledat manual )
[ vtl_design @ 15.01.2009. 22:55 ] @
Taj drugi nacin sam odmah probao i sta je problem. Problem je u tome sto ne mozes sve stranice ucitat na taj fazon. Vecinu "obicnih" html stranice mozes, ali ne i one "komplikovanije" gdje ima flash animacija i slicno. A taj prvi nacin mi se cini izvodljivim. Da li bi mogao iskodirat jedan obicni primjer? Ovo bi moglo zamjeniti potpuno auto-fill programe odnosno toolbare. Primjena ovoga je u tome sto kad neko hoce da popuni neku formu, prijavu, anketu ili bilo sto da ne mora rucno unositi sve podatke, vec automatski preko auto-fill-a, ali ce on rucno submitovati, dovoljno je da se textbox-ovi samo popune u formi da on ne bi morao rucno pisat. Npr kad se treba registrovat na neki sajt gdje je potrebno unijet sta ja znam... ime, prezime i jos nekih 10 podataka, ovo bi omogcuilo da se automatski popune sva polja na tom sajtu na osnovu podataka koje je korisnik unio samo jednom (ime, prezime itd.) kasnije samo pohvata ID-ove textBox-ova i puca auto-fill da mu popuni formu. A isto tako svaki sajt ima neko razumno ime za svaki textbox, npr texbox gdje treba unijeti ime obicno je ID "name" ili barem sadrzi rijec "name" i slicno tako da bi se moglo poboljsat da cak i automatski trazi ID-ove i "skonta" koji je za sta (ime, prezime itd). Zamolio bih te ako imas vremena da pokuas uradit ovaj prvi primjer.
[ ColdKeyboard @ 16.01.2009. 09:44 ] @
Sa PHP-om mozes ucitati isto tako i te "koplikovanije" stranice jer ti kada otvaras tu stranicu ti dobijes njen HTML kod a kada uradis print $string u kojem se nalazi taj kod trebao bi dobiti istu tako stranicu jer ti ustvari ne vuces sve podatke sa te stranice (slike, flash, js) vec samo njen html kod koji dobije svaki browser kada je otvori, eventualno sta bi trebao da uradis je da radis replace relativnih putanja (../images/logo.jpg) u apsolutne (http://www.sajt.com/images/logo.jpg) i onda bi svetrebalo da radi.

A iskreno ne vidim neku svrhu da korisnik dodje na jedan sajt, registruje se i onda kasnije na koji god sajt treba da se registruje on ode ponovo na taj prvi i unese adresu do novog sajta da bi mu ovaj popunio polja koja su obicno nekih 4-5 input box-ova... Meni je to apsurdno jer za vrijeme koje mu treba da otvori taj stari sajt, unese podatke od novog i cak i ako ne bi unosio ID-eve od polja, manje vremena bi mu trebalo da ih rucno unese nego da skace 2-3 puta sa sajta na sajt.

Mnogo bolje rjesenje je napraviti extenziju za firefox (mada mislim da ih ima kamaru) da radi taj posao ili koristiti neki od vec postojecih RoboForm aplikacija.