Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> session w bazie + połączenie adodb
krzysiekX
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 9.11.2004
Skąd: Kraków

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


Witam
Mam stworzone połączenie z mysql z użyciem adodb

$db = NewADOConnection('mysql');
$db->Connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);

Wszystko działa pięknie.
I teraz chciałem użyć tego połącznia w klasie ( do obsługi sesji)
I niemogę sobie poradzić z przekazaniem go.
Wiem że penie było już, ale nie mogę nigdzie znaleść

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
krzysiekX
post
Post #2





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 9.11.2004
Skąd: Kraków

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


Mam tak:

  1. <?php
  2.  $db = &NewADOConnection('mysql');
  3. $db->Connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
  4. $db->debug=1;
  5.  
  6. $session = new Session($db,'sessions', '500');
  7.   session_set_save_handler(array(&$session, '_open',),
  8.  array(&$session, '_close'),
  9. array(&$session, '_read'),
  10. array(&$session, '_write'),
  11. array(&$session, '_destroy'),
  12. array(&$session, '_gc'));
  13.  
  14.  class Session
  15.  {
  16.  var $db;
  17.  var $session_table;
  18.  var $session_lifetime;
  19.  
  20. function session($db, $session_table, $session_lifetime = '0' )
  21. {
  22. $this->db = $db;
  23. $this->session_table = $session_table;
  24. $this->session_lifetime = $session_lifetime; 
  25.  }
  26.  
  27. // i np read 
  28.  
  29.  function _read($session_id)
  30.  {
  31.   $result = $this->db->Execute(&#092;"SELECT session_value FROM \".$this->session_table.\" 
  32.  WHERE session_id = '\".$session_id.\"'&#092;");
  33.  
  34. if ($result && @$result->RecordCount() > 0) {
  35.  
  36.  $row = $result->FetchRow();
  37. $session_value = $row['session_value'];
  38.  
  39. return $session_value;
  40.  }
  41. else {
  42.  return false;
  43. }
  44.  } 
  45. ?>

I teraz tak w każdej z metod wywołanie echo 'Resource: ' . $db->_connectionID;
zwraca poprawny identyfikator.
Gdy włącze debug to wypisuje:

  1. <?php
  2. (mysql): INSERT INTO sessions (session_id, session_start, session_time, session_value) VALUES ('59e8fc3d6e6145e9c684f2fdcfad6754', '1109506393', '1109506393', 'cat_id|s:2:\"91\";SES_PRICE_koszyk|a:1:{i:2765;s:2:\"52\";}SES_WEIGHT_koszyk|a:1:{i:2765;s:1:\"1\";}SES_QTY_koszyk|a:1:{i:2765;i:2;}weight|i:2;suma_zakupow|i:104;')  
  3. --------------------------------------------------------------------------------
  4.  
  5. Warning: mysql_query(): 14 is not a valid MySQL-Link resource in d:&#092;serverwwwsklep_toolsadodbdriversadodb-mysql.inc.php on line 461
  6.  
  7. ?>


Samo zapytanie jest ok
Co może być problemem?
Mógłbyś podać mi jak dokładnie to u Ciebie wygląda
Pozdrawiam
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: 4.10.2025 - 03:13