Witam...
Z pomocą kolegów z forum, którzy pomogli mi pokonać napotkane błedy storzyłem swoją klasę mysql.
Zapraszam do Testowania. (Licencja GPL - Nie usuwać komentarzy)
Wersja: 0.1
Cała klasa:
<?php
/**************************************
Klasa do obsługi mysql, stworzona
przez Helid'a
email: matinowakma@gmail.com
Wszystkie prawa zastrzeżone.
Licencja dla użytkowników forum: <a href=\"http://forum.php.pl\" target=\"_blank\">http://forum.php.pl</a>.
***************************************/
class db
{
/**
Połączenie mysql
**/
private $polaczenie = '';
/**
Baza danych
**/
private $baza = '';
/**
Indyfikator zapytania
**/
private $zapytanie = '';
/**
Ilość zapytań
**/
private $queries = '0';
/**
Ilość wystąpinoych błędów w zapytaniach
**/
private $bledy = '0';
/**
Konstruktor klasy
Odpowiadajacy za połączenie
**/
public function __construct($dbhost, $dbuser, $dbpass, $db)
{
if($this->polaczenie)
{
if(!$this->baza)
{
echo 'Wystąpił bug z wyborem bazy danych'; }
} else {
echo 'Wsytąpił bug z połaczeniem mysql'; }
}//koniec __construct
/**
Funkcja odpowiada za zapytanie.
**/
public function query ($dbzapytanie) {
$this->zapytanie = '';
if (!$this->zapytanie) {
$this->bledy++;
} else {
$this->queries++;
return $this->zapytanie;
}
} //end query
/**
Automatyczne zamykanie połączenia z mysql
**/
public function __destruct()
{
if(!$zamykanie)
{
echo 'Podczas zamykania połączenia wystąpił błąd'; } //end __destruct
}
/**
Pobranie danego rekordu
**//*
public function fetcharray($zap)
{
$fetch = @mysql_fetch_assoc($zap, MYSQL_ASSOC);
if(!$fetch)
{
$this->bledy++;
echo 'Wystąpił błąd z feth arry';
exit();
}
else
{
return $fetch;
}
} //end fetchrow
*/
public function fetcharray($query)
{
if(!$fetch)
{
$this->bledy++;
} else {
return $fetch;
} //end if(!$fetch)
} //end fetchrow
/**
Zlicza ilość rekordów
*/
public function licz($query)
{
if(!$zlicz)
{
echo 'Wystąpił bug ze zliczaniem wierszy.'; }
else
{
return $zlicz;
}
} //end NumRows
/**
Funkcja zwraca
ilość wykonanych
zapytań do bazy
**/
public function zapytan()
{
if(!$this->queries){
return '0';
} else {
return $this->queries;
}
}
/**
Funkcja zwraca
ilość napotkanych
błędów
**/
public function bugs()
{
if(!$this->bledy){
return '0';
} else {
return $this->bledy;
}
}
}
?>
Przykład użycia:
<?php
/**********************************
Test stweronika db napisanego
przez Helid'a
***********************************/
include_once 'sql_drivers/mysql.php'; //Otwieranie klasy
$db = new db( 'host' , 'user', 'hasło', 'baza' ); //Połączenie mysq;
$zap = $db->query('SELECT `login` FROM users'); //Przykładowe zapytanie
while($arr = $db->fetcharray($zap)) //Pętla pobierająca rekordy
{
echo $arr['login'].'<br>'; //Wyświetlanie }
$graczy_zapytanie = $db->query('SELECT `id` FROM users'); //Zapytanie
$graczy = $db->licz($graczy_zapytanie); //Liczenie liczby rekordów
echo 'W NightRacers mamy: '.$graczy.' graczy.<br>'; //Pokazywanie danych echo 'Wykonano '.$db->zapytan().' zapytań do bazy danych.<br>'; //Ilość zapytań echo 'Napotkano '.$db->bugs().' błędów.<br>'; //Ilość napotkanych błędów ?>