Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] nadpisanie sesji ? token...
bronx
post
Post #1





Grupa: Zarejestrowani
Postów: 333
Pomógł: 0
Dołączył: 4.03.2004

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


witam

napisałem sobie taki skrypcik, który tworzy obrazek z wylosowanymi liczbami

  1. <?
  2. $image=ImageCreate(72,30);
  3. $czarny=ImageColorAllocate($image,255,255,255);
  4.  
  5. $bialy=ImageColorAllocate($image,0,0,0); //kolor czarny
  6.  
  7. $token = strtoupper(md5(uniqid(rand(), true)));
  8. $token = substr($token, 0, 4);
  9.  
  10. putenv('GDFONTPATH=' . realpath('.'));
  11. $font = 'tomv';
  12.  
  13. imagettftext($image, 15, 0, 7, 20, $bialy, $font, "$token");
  14.  
  15.  
  16. unset($_SESSION['token']);
  17.  
  18. $_SESSION['token'] = $token;
  19.  
  20. header("Content-type:image/jpeg");
  21. Imagejpeg($image);
  22.  
  23. ?>


no i chodzi o to, żę zmienna sesyjna "token" za kazym razem jest taka sama. Czyli jej nie nadpisuje za każym razem :/ Jak to roziwazać (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował bronx 3.09.2006, 00:57:15
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ZaHoryzontem
post
Post #2





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 17.09.2006

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


U mnie ten problem też niestety występuje... skrypty mam rozwiązane tak:

Jeden skrypt zawiera formularz, który przekazuje zmienne do drugiego skryptu.

Drugi skrypt rejestruje zmienne w sesji, ale ma przycisk "wróć", który przekierowuje usera do poprzedniej strony.

No i problem w tym, że jeśli po powrocie do poprzedniej strony user zmieni jakąś wartość w formularzu, to po przejściu do drugiej strony mam starą wartość zmiennej...

Chyba nie ma sensu wklejać całych skryptów....

początek drugiego to:
  1. <?php
  2. session_start("test");
  3.  
  4. session_register("nazwisko");
  5. session_register("data_dzien");
  6. session_register("data_miesiac");
  7. session_register("data_rok");
  8. session_register("licencja");
  9. session_register("miasto");
  10. session_register("kod_pocztowy");
  11. session_register("telefon");
  12. session_register("e_mail");
  13. ?>


Noc przyniosła rozwiązanie...

Jełśi w skrypcie (np. formularzu) używa się tych samych nazw zmiennych co w swssji, to przy przejściu do nowej strony, "ma" ona wartości zmiennych z formularza - po czym wywołujemy session_start() - a ta funkcja odczytuje zmienne już w sesji zapisane i nadpisuje je na zmienne przekazane wcześniej.

Rozwiązaniem jest używanie 2 zestawów zmiennych - jeden wyłącznie na użytek sessji, drugi na którym operuje "reszta" skryptu i oczywiście odpowiednio przypisywać im wzajemnie wartości.
Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 21:17