Kargul1000
19.05.2014, 06:30:15
Witam!
Poniższy kod który zamieściłem powinien, łącząc się z .../a.php, wypełniać stworzone w tym pliku formularze.
<?php
function createPostString($aPostFields) {
foreach ($aPostFields as $key => $value) {
}
}
$postFields['imie'] = 'JAN';
$postFields['nazwisko'] = 'NOWAK';
$postFields['email'] = 'example@example.com';
$postFields['wiadomosc'] = 'mamy jakiś text ~!@#$%^&*()_+ żłóąęŻĄÓŁĘĆŚćś';
$ch = curl_init('http://www.form.pl/formu/a.php');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
curl_exec($ch);
curl_close($ch);
?>
Moje pytanie jest następujące. Czemu ich nie wypełnia po odpaleniu skryptu przekieruje na stronę .../a.php ale formularze są puste

Proszę o podpowiedź z góry dziękuję.
nospor
19.05.2014, 06:37:54
Kod ten sluzy do wysylania formularza na serwer, a nie do wypelniania pol formularza html...
Sephirus
19.05.2014, 06:38:33
1. To nie wypełni formularzy ogólnie - to wysyła dane zamiast nich
2. Nie pamiętam czy CURLOPT_POSTFIELDS nie wymusza POST ale dałbym jeszcze CURLOPT_POST ustawione na true
EDIT: literówka
Kargul1000
19.05.2014, 06:50:08
hymm

podpowiedzcie jak powinien wygladać kod do wypełniania z automatu formularzy chce napisać bota no ale jak widać jestem w powijakach D:
nospor
19.05.2014, 06:54:13
Zrozum wkoncu roznice:
jedno to wypelnienie pol formularza i widzenie tego wypelnienia
a drugie to wyslanie pol formularza postem
Boty mają za zadanie robienie tego drugiego i to własnie robi Twoj kod.
Jedyne czego moze brakowac to to:
curl_setopt($ch, CURLOPT_POST, 1);
pisał o tym Sephirus
Kargul1000
19.05.2014, 07:06:51
A już czaję

właśnie chodzi mi o to żeby z automatu wszystko się wypełniało i jeszcze nacisnęło przycisk submit
nospor
19.05.2014, 07:08:35
No to mowie: twoj kod wlasnie to robi.....
Jedyne czego nie widze, to kodu submita. Calkiem mozliwe ze przez jego brak, serwer nie przyjmuje poprawnie twojego żądania.
Kargul1000
19.05.2014, 07:10:37
Znaczy się sublit jest w pliku a.php tam gdzie jest cały formularz.
nospor
19.05.2014, 07:12:32
Pola forma tez są w a.php ale jakos w swoim kodzie je dodajesz...... submit tez nalezy wyslac postem...
$postFields['nazwa_submita'] = 'wartosc submita';
Kargul1000
19.05.2014, 07:18:11
A no tak tak ale i tak nie działa, bo jak dobrze rozumie odpalam skrypt który zamieściłem powyżej skrypt odpala a.php wypełnia i wywołuje action form który ładuje ../../../ tak sobie wpisałem ale nie działa
nospor
19.05.2014, 07:20:38
Nie, nie ma odpelania a.php, wypelnienia, i dopiero potem zrobiea action form....
Zrozum wkoncu: na podany przez Ciebie adres czyli na a.php wysylane jest żądanie POST z polami ktore podales. Tu nie ma zadnej filozofii.
Jesli wiec w action form w pliku a.php jest inny adres niz a.php, czyli jest np. b.php, to twoj skrypt ma slac dane do b.php a nie a.php
Jesli zas jest tam a.php lub "nic" to twoj skrypt na chwilę obecną jest ok
Kargul1000
19.05.2014, 07:26:16
To znaczy tak skrypt curl.php wysyła dane do formularzy w a.php i po zadziałaniu <form method="post" action="../../../"> powinno mnie wywalic 3 foldery wyżej wraz z danymi z formularzy z pliku a.php ale tak się nie dzieje. Czemu ?
nospor
19.05.2014, 07:29:10

Toz ci tlumacze, ze twoj cURL ma slac dane pod adres jaki jest w ACTION formularza a nie tam gdzie jest formularz.... zacznij wkoncu czytac co sie do Ciebie pisze :/
Cytat
Jesli wiec w action form w pliku a.php jest inny adres niz a.php, czyli jest np. b.php, to twoj skrypt ma slac dane do b.php a nie a.php
Kargul1000
19.05.2014, 07:36:40

sory

teraz czaje mój curl.php pomija formularze

czaje

Dzięki za cierpliwość
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.