ďťż
Podstrony
|
telcocafeW moich skryptach często odwołuję się do bazy danych MySQL. Nie zawsze wiem, czy mam z nią połączenie. Pomyślałem sobie, że stworzę klasę/funkcję, której argumentem będzie zapytanie SQL. Na początku będzie sprawdzała czy istnieje połaczenie z serwerem bazy danych, a potem będzie wykonywała ów zapytanie.Problem polega na tym, że w ten sposób nie mam pomysłu jak kontrolować mysql_free_result() i mysql_close(). Wiem, że po zakończeniu wykonywania skryptu, połacznie zostanie zakończone automatycznie i pamięć opróżniona. Niemniej jednak czy w czasie wykonywania skryptu nie spowolni to jego działania/zmuli serwera? Czy macie jakieś inne sposoby na stworzenie własnego systemu kontroli nad połączniem z MySQL? zrób sobie klasę do obsługi bazy, wewnątrz której obiekt (OO) lub uchwyt do bazy będzie łatwy w manipulacji. Przykłady: http://www.php.rk.ed...erzenie-mysqli/ http://www.php.rk.ed...ejs-baz-danych/ No OK, ale mi głownie chodziło o odpowiedź na pytanie, czy niestosowanie mysql_close() i mysql_free_result() nie bedzie miało negatywnego wpływu na wydajność. @mysql_close() możesz wykonywać na końcu skryptu, a mysql_free_result() możesz pominąć - zasoby będą "zwolnione" przy wykonaniu kolejnego zapytania. @mysql_close() możesz wykonywać na końcu skryptu Mam powiedzmy taką sytuację: łączę się z bazą na początku wykonywania skryptu, potem mam jakies warunki, które wykonują header('Location:...'). Isnieje także możliwość dalszego wykonania skryptu bez przekierowywania przeglądarki. W ten sposób "nie wiem gdzie mi się kończy skrypt w praktyce". Czy w ten sposób muszę dodać mysql_close() przed każdym header('Location:...') czy mogę sobie darować? możesz dać na samym końcu każdego pliku php, który jest wykorzystywany (nie te inkludowane, tylko finalne) @ zapobiegnie wywalaniem błędów gdyby połączenia nie było. Ale jak close nie będzie to też wielka krzywda nie powinna się stać. |
|||
Sitedesign by AltusUmbrae. |