Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> mysql_connect()
kaczy
post 24.07.2008, 08:53:47
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.07.2008

Ostrzeżenie: (0%)
-----


Chciałbym się dowiedzieć jak zrobić aby połączenie z bazą danych występowało tylko raz w skrypcie. W manualu znalazłem że można podać 4 parametr w mysql_connect ale testowałem to i za każdym razem gdy łącze się na stronie 2 razy z baza to połączenie następuje też 2 razy.
Go to the top of the page
+Quote Post
tomek_swat
post 24.07.2008, 09:02:12
Post #2





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 3.04.2008

Ostrzeżenie: (0%)
-----


może o to Ci chodzi
http://pl2.php.net/manual/pl/function.mysql-pconnect.php
Go to the top of the page
+Quote Post
kaczy
post 24.07.2008, 09:12:10
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.07.2008

Ostrzeżenie: (0%)
-----


Wygląda na to że jest ok, ale wyczytałem że może powodować jakieś problemy i przy dużej ilości połączeń jakaś cześć z nich nie będzie mogła się połączyć. Może znacie jeszcze jakieś inne sposoby? biggrin.gif

----------------------
Poprawka: sprawdziłem w skrypcie i dalej 2 razy nawiązuje połączenie :/

Ten post edytował kaczy 24.07.2008, 09:15:01
Go to the top of the page
+Quote Post
mike
post 24.07.2008, 09:16:20
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


~kaczy jeśli wykonujesz daną funkcję n razy to nie dziw się, że wykona się on ... n razy.
Jeśli chcesz być pewien, że połączenie będzie nawiązane raz to raz wykonaj mysql_connect().

Nie ma innego sposobu.
Go to the top of the page
+Quote Post
kaczy
post 24.07.2008, 09:19:50
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.07.2008

Ostrzeżenie: (0%)
-----


Ale chodzi mi o to że robię sterownik do bazy i połączenie ma następować podczas gdy wywołam funkcje z klasy, np. $bazaDanych->pobierz(), a co gdy wywołan na tej samej stronie funkcje $bazaDanych->dodaj(). Połączenie z bazą zostanie nawiązane ponownie :/
Go to the top of the page
+Quote Post
mike
post 24.07.2008, 09:30:19
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


A dlaczego chcesz łączyć się z bazą dancyh przy każdej operacji? Przecież to nie ma sensu.
Połącz się raz podczas konstruowania obiektu $bazaDanych, przekaż połączenie do pola obiektu i korzystaj z tego później.
Go to the top of the page
+Quote Post
kaczy
post 24.07.2008, 09:34:44
Post #7





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 2.07.2008

Ostrzeżenie: (0%)
-----


Ahh no faktycznie tak też można tongue.gif hehe... no ale od nie dawna się uczę. A można na przykład nie zapamiętywać tego połączenie w polu klasy bo chciałbym korzystać z klasy statycznie? smile.gif
Go to the top of the page
+Quote Post
mike
post 24.07.2008, 09:44:17
Post #8





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Jeśli chcesz statycznie to również trzymasz wewnątrz klasy. Pole klasy może być również statyczne.
Poczytaj na początek o Singletonie, przyda Ci się.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 22:29