Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: CONNECT AND CLOSE
Forum PHP.pl > Forum > Bazy danych > MySQL
AyZeL
Witam.

Mam pytanie dotyczace laczenia sie z baza danych.

Dajmy na to ze cala moja strona opiera sie na pliku index.php do ktorego w zaleznosci od dzialu includowane sa pliki. I w kazdym z tych plikow mam jakies zapytanie sql.

Wiec... czy w takim przypadku lepszym rozwiazaniem bedzie laczenie sie z baza tylko na poczatku pliku index.php i rozlaczenie na jego koncu, czy moze nalezaloby sie laczyc i rozlaczac z baza w kazdym includowanym pliku osobno:?:

Prosze spojrzec na sprawe pod wzgledem bezpieczenstwa oraz wydajnosci takiego scryptu.
LBO
O ile nie jesteś zmuszony łączyć się z kilkoma różnymi bazami, to najlepsze jest rozwiązanie pierwsze (im mniej powtarzających się czynności/akcji, tym lepiej). Radzę Tobie przysiąść nad obiektówką w PHP5 i wykorzystać wzorzec singleton - wzorzec ten w pełni rozwiąże twój problem.
AyZeL
Moj serv i tak nie obsluguje PHP5.

A co z bezpieczenstwem? Roznica polega na tym, ze jesli ktos wejdzie wprost na plik ktory mial byc includowany i w nim bedzie polaczenie i rozlaczenie to scrypt wykona sie "prawidlowo". Prawdopodobnie bedzie brakowalo paru zmiennych do pelnej obslugi scryptu, czyli wykonanie nie dojdzie do skutku.

Druga mozliwosc: do polaczenia dochodzi w pliku "index", plikowi includowanemu bedzie brakowalo polaczenia z baza (nie liczac juz braku zmiennych).

Wiec co z dwojga zlego jest lepsze?
kwiateusz
1 przypadek ale co to da jak kod sie wykona z pliku includowanego jak i tak nie bedzie do niczego uzyteczny .... znaczy dane ktore zwroci lub nie nie ozstana dalej wykozystane wiec laczenie sie w nich z baza jest zbedne

2. nie rozumiem .. jesli laczenie nastepuje w index a potem jest wykonwyany kod z pliku includowanego to on wykozystuje to polaczenie otwarte w indexie... include dziala na zasadzie ze zawartosc includowanego pliku wkleja w zawartosc indexu.. wiec wsyztskie zmienne zawarte w indexie sa dostepne w includowanym pliku

mam nadzieje ze nie znamieszlaem zbytnio...
AyZeL
Druga mozliwosc takze dotyczy wejscia wprost na plik includowany.

No ale w sume logicznie myslac korzysc przechodzi na strone pojedynczego polaczenia i rozlaczenia w pliku "index", poniewaz bez polaczenia do bazy same pliki incudowane sa bezuzyteczne, nawet po wprowadzeniu niewykozystanych zmiennych przez GET-a.
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-2019 Invision Power Services, Inc.