Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CURL] Logowanie na forum przy pomocy CURL
Forum PHP.pl > Forum > PHP
nitro18
Chciałem zalogować się na forum przy pomocy CURL. Na jednej zakładce testuje owe logowanie, a na drugiej sprawdzam czy mnie zalogowało. Ale coś nie chce.
Nie wiem dlaczego nie działa sad.gif

  1. <? 
  2. function createPostString($aPostFields) {
  3. foreach ($aPostFields as $key => $value) {
  4. $aPostFields[$key] = urlencode($key) . '=' . urlencode($value);
  5. }
  6. return implode('&', $aPostFields);
  7. }
  8. $postFields['username'] = 'admin';
  9. $postFields['password'] = 'aaaaa';
  10. $postFields['login'] = 'login';
  11. $postFields['redirect'] = "";
  12.  
  13.  
  14. $ch = curl_init('http://127.0.0.1:8888/forum/login.php');
  15. curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($postFields));
  16. $c=curl_exec($ch);
  17. curl_close($ch);
  18. ?>
qqrq
Nie działa, bo każda strona wywołana cURL-em ma inny identyfikator sesji PHP. Też miałem podobny problem. Możesz np. razem ze zmiennymi POST przesłać COOKIE, które nazywa się PHPSESSID, czy jakoś tak (identyfikator sesji) - i to za pierwszym i drugim wejściem! Za każdym razem musi to ciacho mieć taką samą wartość oczywiście (najlepiej zastartuj sesję u siebie w skrypcie i użyj bieżącego identyfikatora sesji). U mnie pomogło.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.