Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Różnica w działaniu skryptu
gothye
post 2.03.2010, 21:54:05
Post #1





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


Witam

napisałem skrytp do zamieszczania ogłoszeń ,i jest w nim obsługa sesji gdzie dane są trzymane w SQL

i tak, na domowym serwerku (debian 5.0 , Apache2,php5) działa ok ,a na hostingu (suse) jest tak że rekord który trzeba ukatualnić o dane jest uaktualniony ale jednoczeście zostaje zdublowany tylko z innym numerem SID sesji ,sama obsługa w klasie wygląda tak :

  1. $this->SID = $this->GetConfig('SID') ? $this->GetCookie('SID') : $this->GetNewSID();
  2. $this->CheckSession($this->SID);
  3.  
  4.  
  5. FUNCTION CheckSession($sid)
  6. {
  7. $ValueSID = $this->SQL->fetch_assoc("SELECT sid,user,value,vdata FROM session WHERE sid=? AND (session_time > UNIX_TIMESTAMP(NOW())-?) LIMIT 1",array($sid,$this->Timeout));
  8. IF($this->SQL->affected_rows == 1)
  9. {
  10. $this->vData = unserialize($ValueSID['vdata']);
  11. IF(($this->vData['USER_ADDR'] == $this->UserIp) && ($this->vData['USER_BROWSER'] == $this->Browser))
  12. {
  13. $this->content = unserialize($ValueSID['value']);
  14. //$this->UserID = $ValueSID['user'];
  15. RETURN true ;
  16. }
  17. }else{
  18. $this->RemoveSession($sid);
  19. $this->CreateSession();
  20. }
  21. }
  22.  
  23. FUNCTION CreateSession()
  24. {
  25.  
  26. echo 'nowa' ;
  27. $this->SQL->query("INSERT INTO session (sid, session_time) VALUES (?,UNIX_TIMESTAMP(NOW())) ",array($this->SID));
  28. $this->SetCookies('SID',$this->SID);
  29. }
  30.  
  31. {
  32. $this->SQL->query("DELETE FROM session WHERE sid=? LIMIT 1",array($sid));
  33. $this->DelCookie('SID');
  34. $this->SID = $this->GetNewSID();
  35.  
  36. }
  37.  
  38.  



dla debugowania dodałem w create session echo 'nowa' i co jest najbardziej zaskakujące ,na chostingu oraz na serwerze w domku pokazuje się tylko raz (czyli tylko raz jest tworzony rekord w SQL ) to skąd mi sie dubluje w bazie ?

sprawdzałem na kilku przeglądarlach i to się dzieje tylko na operze (kilka wersji) ,nie mam już pomysłu sad.gif

Ten post edytował gothye 2.03.2010, 22:17:05


--------------------
Nie udzielam pomocy poprzez PW
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 16.07.2025 - 17:14