Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] Połączenie
falfin
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 21.02.2007

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


Witam. Zastanawia mnie jak bardzo połączenie z bazą danych spowalnia czas łądowania strony?
Mój skrypt rejestracji korzysta z 3 funkcji, w każdej funkcji znajduje się połączenie z bazą...
Czy to poprawne rozwiązanie? Czy lepiej zrobić połączenie na początku skryptu i, przekazywać jego identyfikator do funkcji?

Ten post edytował falfin 9.07.2007, 20:49:10
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Ziels
post
Post #2





Grupa: Zarejestrowani
Postów: 235
Pomógł: 2
Dołączył: 30.06.2006

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


Cytat(falfin @ 9.07.2007, 21:45:27 ) *
Witam. Zastanawia mnie jak bardzo połączenie z bazą danych spowalnia czas łądowania strony?
Mój skrypt rejestracji korzysta z 3 funkcji, w każdej funkcji znajduje się połączenie z bazą... Czy to poprawne rozwiązanie?


Jeśli na każdej podstronie będzie połączenie to łączysz się na początku skryptu a na końcu zamykasz połączenie, jeśli nie to sprawdzasz sobie na początku skryptu czy połączenie ma nastąpić i jeśli tak to się łączysz.

Albo inaczej, dla niektórych rozwiązanie złee i wogóle ale co tam:
  1. <?php
  2. class mysql{
  3.  private $connection;
  4.  private static $instance;
  5.  private function __construct(){
  6. $this -> connection = mysql_connect('host','user','pass');
  7. mysql_select_db('baza');
  8.  }
  9.  private function __clone(){}
  10.  public static function getInstance(){
  11. if(!(self::$instance instanceof mysql)) self::$instance = new mysql());
  12. return self::$instance;
  13.  }
  14.  public function getConnection(){
  15. return $this -> connection;
  16.  }
  17. }
  18. ?>

I tylko zamienić dane a potem sobie pobierać połączenie w odpowiednich funkcjach. Tak, wiem że singleton jest zły obleśny fuj i wszystko, ale jest to gwarant jednego połączenia, wywołanego jedynie w razie potrzeby.

Pisane z palca ale powinno działać (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 19:45