Uvod
Pozdrav! Jučer sam napravio OOP klasu za MySQL, makar već postoji MySQLi ali nema veze, ovako sam barem naučio osnove OOP-a. Obuhvaćene su sve funkcije, te s ovom klasom je puno lakše raditi s MySQL-om nego sa procedurama (normalne funkcije). Više ne koristite link indentifier, jer je link indentifier objekt, sam po sebi. Ovo sam generalno objavio na SA-MP forumu (makar neznam zašto), ali želim podijeliti ovu klasu i s vama.
Kako koristiti?
Osnovno što trebate napraviti je pridružiti (include) myOop.class.php klasu u svoj projekt. Ime klase je MySQL (tako da znate kada stvarate objekt).
Ako poznajete MySQL funkcije, ovo će vam biti jako jednostavno koristiti jer samo izostavite mysql_ prefix dok pozivate funkciju. Tako da će vam umjesto npr.
$result = mysql_query($query, $link_indentifier);
Sada kod izgledati ovako:
$result = $neki_mysql_objekt -> query($query); // Primjetite da nema link indentifiera, jer je on $neki_mysql_objekt sam po sebi
Ah sad za one koji ne poznaju MySQL najbolje, tu vam ne mogu pomoći, sve što trebate možete pronaći ovdje: http://hr.php.net/manual/en/function.msql.php
Primjeri
Primjer #1: Povezivanje sa dvije baze podataka, te prebacivanje podataka iz jedne u drugu.
// Zatraži klasu
require("myOop.class.php");
// Deklariraj server varijablu kao array
$server = array();
// Stvori objekt
$server[] = new MySQL;
$server[] = new MySQL;
// Povežimo se sa serverima
$server[0] -> connect("prvi-host.com", "prvo-ime", "prva-lozinka", true); // Zadnji parameter (true) odnosi se na new_link parameter (stvaramo novu konekciju bez obzira ako ista već postoji)
$server[1] -> connect("drugi-host.com", "drugo-ime", "druga-lozinka", true);
// Odaberi baze podataka
$server[0] -> select_db("racuni");
$server[1] -> select_db("backup");
// Izvuci podatke sa prvog servera
$result = $server[0] -> query("SELECT `trosak` FROM `g2010` ORDER BY `datum` DESC;"); // Izvukli smo `trosak` iz tablice `g2010`, poredajmo `trosak` po `datumu` silazno.. (ovo je samo primjer)
// Prebacujemo sav `trosak` u `g2010 backup` na drugom serveru
while($row = $result[0] -> fetch_row())
{
$server[1] -> query("INSERT INTO `g2010 backup` (`Iznos`) VALUES($row[0]);");
}
echo "Backup uspjesan!";
$server[0] -> close();
$server[1] -> close();
Primjer #2: Jednostavno povezivanje sa jednim serverom i ubacivanje podataka
require("myOop.class.php");
$server = new MySQL;
$server -> connect("host", "ime", "pass");
$server -> select_db("baza");
$result = $server -> query("INSERT INTO `tablica` (`Nesto`) VALUES(`Nesto`);");
$server -> close();
Preuzimanje (Download)
Klasu možete preuzeti na http://solidfiles.com/d/c101/. Hvala!
Ostalo
Ako imate kakvih pitanja, slobodno ih postavite ovdje.