Pisze wlasnie wiekszy system wykorzystujacy php i PostgreSQL, zdecydowalem sie na uzycie php Data Objects ze wzgledu na uniwersalnosc. Stosuje polaczenie typu persistent. Moj kod wyglada mniej wiecej tak:
<?php try { $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $err) { } $row = $pdo->query... [...] } [...] } else { [...] switch ($_GET['module']) { case 1: if (!$_SESSION['uprawnienia']{0}) { [...] } else { [...] switch($_GET['action']) { case 1: $row = $pdo->query('SELECT count(*) AS ile FROM Personel')->fetch(); [...] ?>
Nieistotne fragmenty kodu pozwolilem sobie pominac. Problem w tym ze przy tym drugim zapytaniu wewnatrz tych switchy zwraca mi blad:
Fatal error: Call to a member function query() on a non-object in [...] on line 90
" title="Zobacz w manualu php" target="_manual
Wydawalo mi sie, ze tworzac polaczenie persistent moge zrobic to w jednym miejscu i przez cala dlugosc sesji je wykorzystywac, a tutaj wyglada na to jakby zostalo ono zamkniete, lub zmienna zostala nakryta. Gdzie lezy problem?
Pozdrawiam