Witam,
tworzę pewien serwis internetowy, na którego podstronach występują zapytania do bazy danych. Zatem użytkownik wchodząc na jakąkolwiek podstronę musi mieć połączenie z bazą danych. Robię to tak, iż na każdej podstronie mam zainkludowany plik, w którym zawierane jest połączenie z bazą. Teraz moje pytanie odnośnie optymalizacji serwisu: jak można sprawdzać, czy użytkownik jest już połączony z bazą, by nie łączył się niepotrzebnie drugi raz z tą samą bazą?
Pozdrawiam!
Adi32
8.07.2011, 13:34:52
Jeżeli podstrony są wczytywane poprzez 'include' lub 'require' lub są w jakiś inny sposób połączone z plikiem index.php, czy default.php czy z czego tam startujesz to połączenie z bazą wystarczy zadeklarować tylko raz, w pliku startowym, lub w jakimś innym pliku i zaincludować go na początku tegoż startowego pliku.
Potem na podstronach możesz używać funkcji do relacji z bazą.
Podstrony nie są w żaden sposób połączone z plikiem index.php
Adi32
8.07.2011, 13:46:01
W takim razie musisz definiować połączenie z bazą w każdej z podstron. Poza tym to nie user łączy się z bazą tylko Twój skrytp. Wszystkie niepołączone ze sobą obiekty strony aby łączyć się z bazą muszą być połączone. (są wyjątki ale to inny poziom).
Hm..a nie istnieje jakiś warunek logiczny, sprawdzający czy jest już nawiązane połączenie z bazą?
Adi32
8.07.2011, 14:19:31
Można sprawdzić czy istnieje połączenie z bazą chociażby używając jakiejś funkcji do relacji z bazą dodając przed nią znak @ i wstawić w warunek ale jeżeli są to podstrony nie połączone z index.php (to jest nielogiczne) to musisz definiować w każdej połączenie.
webdice
8.07.2011, 14:38:36
Same tagi to nie tytuł, proszę poprawić.
toaspzoo
8.07.2011, 15:39:41
w funkcji łączącej dajesz return polaczony() i sprawdzasz potem if(polaczony())
A może
mysql_ping()?
Ale wtedy musisz trzymać resource z
mysql_connect() w zmiennej.
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.