Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Curl i sesje php
binary_search
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 16.05.2009

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


Tak więc podczas pracy z cURLem napotkałem coś dziwnego. Wyniki skryptu wskazują na to, że korzystanie z $_SESSION nie jest zapamiętywane, efekt jest taki, jakby na stronę wchodziło się po raz pierwszy za każdym razem. Najlepiej jest to zobrazować kodem.
Kod strony wykorzystującej sesje
  1. <?php
  2.    session_start();
  3.    if(!isset($_SESSION['i']))$_SESSION['i']=0;
  4.    echo ++$_SESSION['i'].' '; //wypisanie i zwiększenie licznika
  5. ?>

Kod skryptu curl pobierającego stronę kilkukrotnie
  1. <?php
  2. $c=curl_init();
  3. curl_setopt($c, CURLOPT_URL, $adres); //adres strony
  4. curl_setopt($c, CURLOPT_COOKIESESSION, 1); //probowalem roznych ustawien, ale nic nie pomoglo
  5. $t=5;
  6. while($t--)curl_exec($c);
  7. curl_close($c);
  8. //wynik skryptu:
  9. //1 1 1 1 1
  10. //oczekiwany wynik:
  11. //1 2 3 4 5
  12. ?>

Wiem, że za obsługę sesji realizuje serwer i wygląda na to, że za każdym razem, gdy pobieram stronę widzi unikalną wizytę. Jak sprawić, abym pozostał w obrębie jednej sesji?

Ten post edytował binary_search 21.06.2009, 13:30:45
Go to the top of the page
+Quote Post
hostingekspert
post
Post #2





Grupa: Zarejestrowani
Postów: 51
Pomógł: 5
Dołączył: 12.04.2007
Skąd: 1=1

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


sesje zapisywane są domyślnie na ciachach, więc może dodaj
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');

a jeśli nie to może próbowałeś całość umieścić w pętli, począwszy od curl_init()? być może curl_exec() jest cachowane ((IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) )
Go to the top of the page
+Quote Post
em1X
post
Post #3





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

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


Może nie tyle sesje co ich identyfikatory. Przekaż identyfikator z ciastka, które otrzymujesz od serwera i sesja będzie trwać.
Go to the top of the page
+Quote Post
binary_search
post
Post #4





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 16.05.2009

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


Dziękuję za zainteresowanie tematem, zastosowałem ciacha na plikach i wszystko gra.

PS. do osób które trafią tu z Googla (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
wystarczy lekko przerobić jeden z przykładowych kodów z manuala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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: 23.08.2025 - 11:59