Witam!
W dziale 'php' nie chcieli mi powiedzieć co jest nie tak to zakładam, że jest spox i proszę o ocene.
No i niech mi w końcu ktoś powie czy jestem na dobrym tropie, a może wywalić to wszystko w kosmos?

Klasa napisana w ramach 'sterownika', który ma sprawić, że moja aplikacja nie będzie całkowicie uzależniona od bazy danych.
<?php
class DB
{
// var $cache_dir
public $cache_dir = ''; //katalog, w którym składowane są cache z danego pliku
// var $bufor
protected
$bufor = array(); // var $cache_file
public $cache_file = 'cache'; //plik cache
// var $conn
public $conn;
// var $db
public $db;
// var $result
protected $result;
// var $rows
private $rows;
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//funckcja sprawdzająca czy plik cache isnieje
protected function cache_exists($var)
{
{
return(true);
}
else
{
return(false);
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//konstruktor :)
public function __construct($host, $db_user, $db_pass, $db_name)
{
//sprawdzanie, czy zostały podane wszystkie dane(prucz hasła, które niezawsze jest wymagane)
{
print('Nie zostały podane wszystkie parametry połączenia z bazą danych!'); }
else
{
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//destruktor 
public function __destruct()
{
{
print('Nie można zamknąć połączenia!'); }
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//funkcja pytająca
public function sql_query($query, $mode = '1')
{
//czytać z pliku cache? Jeżeli mode jest różne od 1 to nie
$cache = $mode == 1 ? $this->cache_exists($this->cache_file) : false;
//jeżeli plik cache nie istnieje to wykonaj zapytanie
if(!$cache)
{
{
if( $this->result )
{
return( $this->result );
}
else
{
}
}
else
{
return(false);
}
}
else
{
return(1);
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//zapytanie do tablicy
public function sql_fetch_array($result, $mode = '1',$typ = '1')//Dostępne wartości pola 'typ' to:1,2,3
{
'1' => MYSQL_ASSOC,
'2' => MYSQL_NUM,
'3' => MYSQL_BOTH
);
//jeżeli istnieje plik cache to pobierz z niego dane
if(!$this -> cache_exists($this->cache_file))
{
//mode==0 czyli zapisuj do cache
if($mode == '0')
{
{
$this->bufor[] = $rows;
}
if($this->cache_write($this->cache_file))
{
return($this->bufor);
}
else
{
return(false);
}
}
//mode==1 czyli nie zapisuj do cache
elseif($mode == '1')
{
{
$this->bufor[] = $rows;
}
return($this->bufor);
}
}
else
{
return($this->bufor);
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//zapisuje do pliku cache
protected function cache_write()
{
//jeżeli plik cache istnieje, zapisz, jeżeli nie zwróć false
if(!$this -> cache_exists($this->cache_file))
{
if(file_put_contents
($this->cache_dir.$this->cache_file, serialize($this->bufor))) {
return(true);
}
else
{
return(false);
}
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//usuwa cache
public function delete_cache()
{
//jeżeli plik cache istnieje, usuń, jeżeli nie to zwróć false
if($this -> cache_exists($this->cache_file))
{
if(unlink($this->cache_dir.$this->cache_file)) {
return(true);
}
}
else
{
return(false);
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//pierwszy record
public function get_first_record($query)
{
$record = $this->sql_fetch_array($query,1,2);
return $record[0][0];
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//pierwszy wiersz
public function get_first_row($query)
{
$row = $this->sql_fetch_array($query,1,3);
return $row[0];
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//ostatni rekord
public function get_last_record($query)
{
$record = $this->sql_fetch_array($query,1,2);
$rows = count($record)-1; $col = count($record[0
])-1; return $record[$rows][$col];
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//ostatni wiersz
public function get_last_row($query)
{
$record = $this->sql_fetch_array($query,1,3);
return $record[$row];
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//transakcje
public function Transaction ($var)
{
'fail' => 'ROLLBACK',
'complete' => 'COMMIT',
'start' => 'BEGIN'
);
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//ilość wierszy
public function num_rows($query)
{
if(!$this->cache_exists($this->cache_file))
{
}
else
{
}
}
////////////////////////////////////////////////////
////////////////////////////////////////////////////
////////////////////////////////////////////////////
//ilość 'dotkniętych' wierszy
public function affected_rows()
{
}
}
?>
Edit: Klasy zapomniałem dodać
Ten post edytował ziom 9.03.2006, 22:18:13