Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /*
- * Autor: Dawid Duniec
- *
- *
- * Przykładowe spos�b użycia
- * $mysql = new mysqldb();
- * $mysql->query("SELECT * FROM cos");
- * $wynik = $mysql->pobierz_wyniki();
- */
- class mysqldb{
- private $connection;
- private $wynik;
- private $pobierz_wynik;
- private $pobierz_wyniki;
- function __construct() {
- //definicja danych potrzebnych do połączenia z serwerem mysql
- $db_host = 'localhost';
- $db_user = 'freak';
- $db_password = 'dupa';
- $db_name = 'freak';
- //Bardziej szczeg�łowe informacje o błędach: MYSQLI_REPORT_ERROR
- //wyłączamy raportowanie błęd�w przez moduł mysqli
- mysqli_report(MYSQLI_REPORT_OFF);
- //łączymy się, ukrywając błędy na tym etapie
- $this->polaczenie = @new mysqli($db_host, $db_user, $db_password, $db_name);
- //w razie znanych problem�w system wyrzuci nam ładny komunikat
- //w razie nieznanych problem�w system wyrzuci nam numer błędu
- //w razie udanego połączenia system ustawi kodowanie na utf8
- switch(mysqli_connect_errno()){
- case 0:
- $this->polaczenie->set_charset("utf8");
- break;
- case 2002:
- echo "SQL - nie można nawiązać połączenia";
- exit;
- case 1045:
- echo "SQL - błędna nazwa użtkownika/hasło ";
- exit;
- case 1044:
- echo "SQL - błąd wyboru bazy";
- exit;
- default:
- echo "<br/>SQL - błąd nr <b>: ".mysqli_connect_errno()/"</b>";
- exit;
- }
- }
- //Funkcja przekazuje otrzymane jako parametr zapytanie do serwera mysql
- public function query($zapytanie){
- //'maskuje' znaki specjalne w zapytaniu (zabezpieczenie przed crackerami?)
- $zapytanie = $this->polaczenie->real_escape_string($zapytanie);
- //przekazanie zapytania do bazy
- $this->wynik = $this->polaczenie->query($zapytanie);
- //W przypadku błędnej skłądni wyświetli się stosowny komunikat
- //oraz połączenie zostanie zamknięte a skrypt zakończy działanie
- if(empty($this->wynik)) {
- echo "SQL - Błąd zapytania";
- $this->polaczenie->close();
- exit;
- }
- }
- //Funkcja służy do pobierania pojedyńczego wyniku
- public function pobierz_wynik(){
- $this->pobierz_wynik = mysqli_fetch_object($this->wynik);
- if(empty($this->pobierz_wynik)){
- return FALSE;
- }
- else return $this->pobierz_wynik;
- }
- //Funkcja pobiera wszystkie wyniki jako tablicę obiekt�w
- public function pobierz_wyniki(){
- while($rekord = mysqli_fetch_object($this->wynik)){
- $this->pobierz_wyniki[] = $rekord;
- }
- if(empty($this->pobierz_wyniki)){
- return FALSE;
- }
- else return $this->pobierz_wyniki;
- }
- //Funkcja zwraca ile wierszy zawiera wynik
- public function ile_rekordow(){
- return mysqli_affected_rows($this->polaczenie);
- }
- //Zamykamy połączenie przy niszczeniu obiektu
- public function __destruct() {
- @mysqli_close($this->polaczenie);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement