Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ręczna metoda post i logowanie
Forum PHP.pl > Forum > PHP
deicide
Mam taką funkcje:

  1. <?php
  2. function sendToHost($host, $method, $path, $data, $useragent='')
  3. {
  4. // Supply a default method of GET if the one passed was empty
  5. if (empty($method)) {
  6. $method = 'GET';
  7. }
  8. $method = strtoupper($method);
  9. $fp = fsockopen($host, 80);
  10. if ($method == 'GET') {
  11. $path .= '?' . $data;
  12. }
  13. if ($fp)
  14. {
  15. fputs($fp, "$method $path HTTP/1.1rn");
  16. fputs($fp, "Host: $hostrn");
  17. fputs($fp,"Content-type: application/x-www-form-urlencodedrn");
  18. fputs($fp, "Content-length: " . strlen($data) . "rn");
  19. if (trim($useragent)!='') {
  20. fputs($fp, "User-Agent: $useragentrn");
  21. }
  22. fputs($fp, "Connection: closernrn");
  23. if ($method == 'POST') {
  24. fputs($fp, $data);
  25. }
  26.  
  27. while (!feof($fp)) {
  28. $buf .= fgets($fp,128);
  29. }
  30. fclose($fp);
  31. //header('Location: http://'.$host.$path);
  32. //exit;
  33. return $buf;
  34. }
  35. return false;
  36. }
  37. ?>


I teraz np. wysłałem informacje zalogowania się na forum. Wszysttko działa prawidłowo ale jest taki problem, że np. jak zrobie przekirowanie to sam nie jestem zalogowany na forum, ale jest zaznaczone, że taki user istnieje. Czy jest taka mozliwość aby móc sie zalogować w taki sposób lub podobny?
legorek
No jak chcesz chodzić po forum (i kazdej stronie opartej na SESID przechowywanym w cistku) musisz przechwycić ciasteczka i wysłać je kolejnym stronom.
dopy
Cytat
musisz przechwycić ciasteczka i wysłać je kolejnym stronom.


A moze wiesz jak to zrobić ? Też bym chętnie skorzystał, a w zasadzie nie mam wizji jak by to zrobić.
karolp
Cytat(dopy @ 20.08.2006, 14:13 ) *
A moze wiesz jak to zrobić ? Też bym chętnie skorzystał, a w zasadzie nie mam wizji jak by to zrobić.


Przejrzyj klasę HTTP_Client z repozytorium PEAR. Powinna się nadawać do twoich celów.

Karol
deicide
Problem w tym, że przegladarka najczęściej nie przyjmuje ciasteczek, które pochodzą z innej domeny niż zostały wysłane. Jeżeli tego sie nie obejdzie to raczej chyba nici z tego. Próbowałem wysłać ciasteczka nie wysłało. Jeżeli podałem własnął domene to było tip top, ale to w gruncie rzeczy nic nie daje.
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.