Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z mysqli oraz sesjami
Forum PHP.pl > Forum > Przedszkole
adrian1987
Witam, mam taki problem. Chciałbym zrobić coś takiego, że łączę się raz z bazą i połączenie trzymam w zmiennej sesyjnej. Później już korzystam z tego połączenia już ustalonego, a nie łączę się na nowo...
Problem jest taki, że gdy chcę wykonać jakieś zapytanie otrzymuję taki komunikat:
Cytat
Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in C:\www\index.php on line 28

Kod wygląda następująco:
  1. <?PHP
  2.  
  3. require_once('./includes/configure.php');
  4.  
  5. /*require_once('./classes/db.php');*/
  6. /*require_once('./classes/news.php');*/
  7. ?>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  9. <html xmlns="http://www.w3.org/1999/xhtml">
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  12. <title>Panel</title>
  13. </head>
  14.  
  15. <body>
  16.  
  17. <?PHP
  18. if(!isset($_SESSION['baza']))
  19. {
  20. $mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_BASE);
  21. if(mysqli_connect_error()) die ("Błąd połączenia z bazą danych: ".mysqli_connect_error());
  22. $mysqli -> query("SET NAMES UTF8");
  23. $_SESSION['baza'] = $mysqli;
  24. }
  25. else $mysqli = $_SESSION['baza'];
  26. $sql = "SELECT * FROM `aktualnosci` WHERE `id`=2";
  27. $result = $mysqli -> query($sql);
  28.  
  29. echo $row['tekst_pl'];
  30. ?>
  31.  
  32.  
  33. <?PHP
  34. echo 'GET: '; print_r($_GET);
  35. echo '<br />';
  36. echo 'POST: '; print_r($_POST);
  37. echo '<br />';
  38. echo 'SESSION: '; print_r($_SESSION);
  39. ?>
  40. </body>
  41. </html>


W zmiennej sesyjnej połączenie jest : SESSION: Array ( [baza] => mysqli Object ( ) )
Wiecie co może być tego przyczyną, że otrzymuję taki komunikat i nie mogę nic na bazie zrobićquestionmark.gif
Neo
Zrób połączenie z bazą w pliku ./includes/DataBase.php, dołączaj plik i działaj na $mysqli
adrian1987
Takie rozwiązanie nie przejdzie... Muszę mieć zrobione 1 połączenie z którego korzystać będę w metodach różnych klas...
A już zdarzyło mi się że taką metodą przekraczałem limit połączeń do bazy...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.