Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]obiektowe połaczenie z bazą
pablo_83
post
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 16
Dołączył: 11.01.2009
Skąd: wrocław

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


witam,
jestem początkujący w obiektowym programowaniu i za bardzo nie chce mi to do głowy wejść.
Próbuję się połączyć obiektowo z bazą i napisałem poniższy kod

  1. <?php
  2. require_once ('hasla.php');
  3. ?>
  4.  
  5. <?php
  6.  
  7. class DataAccess
  8. {
  9. var $DataBase;
  10.  
  11. function BaseConnect ($host, $user, $password, $db)
  12. {$this->db = mysql_connect ($host, $user, $password) or die ('Nie mogę nawiązać połączenia');
  13. mysql_select_db ($db,$this->db);
  14. mysql_query("Set Names 'utf8'");
  15. mysql_query("Set collation_connection = utf8_polish_ci");
  16. }
  17.  
  18. function BaseClose ()
  19. {$this->BaseConnect;
  20. $close = $this->db;
  21. mysql_close($close);
  22. }
  23. }
  24.  
  25.  
  26. $DataBase = new DataAccess();
  27. /*if (!$DataBase) {echo 'niepołączony';}
  28.   else {echo 'połączony';}*/
  29. ?>


Moje pytanie brzmi, czy ten kod jest poprawny?
Jak w prosty sposób mogę sprawdzić połączenie z bazą ( czy mogę zrobić coś takiego jak w wykomentowaniu).
Proszę o pomoc w rozwiązaniu, chce zrozumieć w końcu tą obiektowość, czytałem sporo ale jakoś w teorii nie wchodzi mi to głowy
może na własnych błędach i swoim przykładzie uda mi się to zrozumieć.

Składnia kodu powinna być ok bo żadne błędy nie wyskakują.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(pablo_83 @ 5.09.2009, 15:20:37 ) *
Jak w prosty sposób mogę sprawdzić połączenie z bazą ( czy mogę zrobić coś takiego jak w wykomentowaniu)

Pójść do serwerowni z ciasteczkami i marchewką i zapytać się serwera Mysql czy się połączył.
A bardziej serio (jakie komunikat w die napisałeś?)

W dodatku nazewnictwo zmiennych/właściwości
mysql_connect zwraca ci "Twoją bazę danych?". Jest to bardzo ważne dla innych osób, które będą czytały kod. W manualu pisze co zwraca funkcja mysql_connect. Zastosuj do tego odpowiednią nazwę.

Nazwa klasy. "DataAccess"? Dostęp do danych? A nie raczej "DatabaseConnection"? ablo DbConnection?

Uwierz. Potworzysz w projekcie parę takich klas z dziwacznymi nazwami to po roku nie załapiesz o co chodziło.
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 17:40