Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Różnica w działaniu skryptu
gothye
post
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 (IMG:style_emoticons/default/sad.gif)

Ten post edytował gothye 2.03.2010, 22:17:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
parzygnat
post
Post #2





Grupa: Zarejestrowani
Postów: 155
Pomógł: 6
Dołączył: 31.12.2007
Skąd: Poznań

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


a jak zrobisz cos takiego sid="'.?.'" ?
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: 3.10.2025 - 14:20