Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] Klasa do obsługi baz danych.
Maciekbjw
post
Post #1





Grupa: Zarejestrowani
Postów: 217
Pomógł: 23
Dołączył: 2.12.2007
Skąd: Warszawa

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


Witam, zacząłem pisać sobie prostą klasę do obsługi baz danych. Zawierać będzie podstawowe funkcje, czyli łączenie, rozłaczanie, dodawanie, edycję i kasowanie rekordów. Mam już początek i chciałbym spytać Was, może bardziej doświadczonych, czy idę w dobrym kierunku i czy takie pisanie jest poprawne. Byłbym wdzięczny za jakieś opinie i uwagi.

Oto kod:

Kod
class MySQL {


  private


  $type, #typ

  $host,  #host

  $user,  #uzytkownik

  $name,  #nazwa bazy

  $password, #haslo do bazy
  
  $connection; #uchwyt do polaczenia
  
  
  public
  
  $active, #uchwyt do akutalnego zapytania
  
  $time, #czas wykonania zapytan
  
  $count, #ilosc zapytan
  
  $error; #ewentualne bledy
  
  
  #konstruktor klasy MySQL
function __construct() {


require_once('db-config.php')
or die('Error, file not found!');

$this->type = $type;
$this->host = $host;
$this->user = $user;
$this->name = $name;
$this->password = $password;
$this->count = 0;

if(!isset($this->connection)) {
$this->Connect();

}
}
#laczy sie z baza danych
function Connect() {
$this->connection = mysql_connect('$this->host','$this->name','$this->user','$this->password')
or die ('Error!');


}
#rozlacza sie z baza danych
function Disconnect() {


mysql_close($this->connection);

}
#w razie niepowodzenia wywala blad
function Error(){

$this->error = mysql_error();


}
} #end class
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Oto moje uwagi:
1. Zamiast "private $pole1, pole2;" wypisywać każde osobno tj. "private $pole1; private $pole2;"
2. Przyjęło się poprzedzać nazwy prywatnych składowych podkreśleniem tj. "private $_pole1;"
3. Przyjęło się nazwy metod/pól rozpoczynać małą literą.
4. W konstruktorze klasy możesz jako opcjonalny parametr podawać ścieżkę do pliku z configiem, a jeśli takowa nie zostanie podana to próbujesz wczytać domyślny plik.
5. Komentarze pisz w stylu phpdoc.
6a. Działa ci twój kod? Konkretnie chodzi mi o:
  1. <?php
  2. $this->connection = mysql_connect('$this->host','$this->name','$this->user','$this->password') or die ('Error!');
  3. ?>

według mojej wiedzy to nie ma prawa działać (wywal te ' w mysql_connect()).
6b. Czy aby nie masz za dużo parametrów w mysql_connect()? Zobacz jakie parametry powinna przyjmować funkcja mysql_connect" title="Zobacz w manualu PHP" target="_manual.
7. Szkoda, że klasa nie robi nic poza nawiązywaniem i kończeniem połączenia z bazą...

Ten post edytował phpion 2.03.2008, 21:42:11
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: 26.12.2025 - 00:33