Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Wypełnianie formularzy za pomocą culr
Kargul1000
post
Post #1





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


Witam!

Poniższy kod który zamieściłem powinien, łącząc się z .../a.php, wypełniać stworzone w tym pliku formularze.

  1.  
  2. <?php
  3. function createPostString($aPostFields) {
  4. foreach ($aPostFields as $key => $value) {
  5. $aPostFields[$key] = urlencode($key) . '=' . urlencode($value);
  6. }
  7. return implode('&', $aPostFields);
  8. }
  9.  
  10. $postFields['imie'] = 'JAN';
  11. $postFields['nazwisko'] = 'NOWAK';
  12. $postFields['email'] = 'example@example.com';
  13. $postFields['wiadomosc'] = 'mamy jakiś text ~!@#$%^&*()_+ żłóąęŻĄÓŁĘĆŚćś';
  14.  
  15. $ch = curl_init('http://www.form.pl/formu/a.php');
  16. curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
  17. curl_exec($ch);
  18. curl_close($ch);
  19. ?>
  20.  
  21.  


Moje pytanie jest następujące. Czemu ich nie wypełnia po odpaleniu skryptu przekieruje na stronę .../a.php ale formularze są puste (IMG:style_emoticons/default/sad.gif)
Proszę o podpowiedź z góry dziękuję.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Kod ten sluzy do wysylania formularza na serwer, a nie do wypelniania pol formularza html...
Go to the top of the page
+Quote Post
Sephirus
post
Post #3





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


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

Ten post edytował Sephirus 19.05.2014, 06:39:01
Go to the top of the page
+Quote Post
Kargul1000
post
Post #4





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


hymm (IMG:style_emoticons/default/smile.gif) podpowiedzcie jak powinien wygladać kod do wypełniania z automatu formularzy chce napisać bota no ale jak widać jestem w powijakach D:
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




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
Go to the top of the page
+Quote Post
Kargul1000
post
Post #6





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


A już czaję (IMG:style_emoticons/default/smile.gif) właśnie chodzi mi o to żeby z automatu wszystko się wypełniało i jeszcze nacisnęło przycisk submit
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




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.
Go to the top of the page
+Quote Post
Kargul1000
post
Post #8





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


Znaczy się sublit jest w pliku a.php tam gdzie jest cały formularz.
Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Pola forma tez są w a.php ale jakos w swoim kodzie je dodajesz...... submit tez nalezy wyslac postem...
$postFields['nazwa_submita'] = 'wartosc submita';
Go to the top of the page
+Quote Post
Kargul1000
post
Post #10





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


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 (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #11





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




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
Go to the top of the page
+Quote Post
Kargul1000
post
Post #12





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


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 ?
Go to the top of the page
+Quote Post
nospor
post
Post #13





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




(IMG:style_emoticons/default/facepalmxd.gif)
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
Go to the top of the page
+Quote Post
Kargul1000
post
Post #14





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 19.12.2010

Ostrzeżenie: (0%)
-----


(IMG:style_emoticons/default/smile.gif) sory (IMG:style_emoticons/default/smile.gif) teraz czaje mój curl.php pomija formularze (IMG:style_emoticons/default/biggrin.gif) czaje (IMG:style_emoticons/default/smile.gif) Dzięki za cierpliwość (IMG:style_emoticons/default/smile.gif)

Ten post edytował Kargul1000 19.05.2014, 07:44:15
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 04:22