Ciao a tutti,
ho trovato in giro per il web, una classe che gestisce php, ed essendo essa molto semplice e quindi completamente modificabile ho deciso di provarla, ve la posto senza problemi
Adesso il mio problema, dopo avere incluso la classe nella mia pagina, ho eseguito una stupidissima query con il seguente codiceCodice PHP:class DBO {
/**************************************************
* variabili per connessione al db
**************************************************/
private $dbName = "cartolerianoceto";
private $dbHost = "localhost";
private $dbUser = "cartolerianoceto";
private $dbPassword = "xxxxxxx";
private $dbConnection;
private $dbSelect;
private $dbResult;
private $attiva = false;
private $msgErr = array();
/**
* **************************************************
*
* @param string $sql
* @return $command
*/
private function tipoQuery($sql) {
$l = strpos(trim($sql), " ");
$command = substr($sql,0,$l);
return strtoupper($command);
}
public function connetti() {
if(!$this->attiva) {
$connessione = mysql_connect($this->dbHost,$this->dbUser,$this->dbPassword);
if (!$connessione) array_push($msgErr,'[b]Impossibile connettersi[/b]: '.mysql_error());
else {
$this->dbConnection = $connessione;
$this->dbSelect = mysql_select_db($this->dbName, $this->dbConnection);
if (!$this->dbSelect) array_push($msgErr,'[b]Impossibile usare[/b] '.$this->dbName.' : ' . mysql_error());
return true;
}
} else
if(count($msgErr)>0) return $msgErr;
}
public function disconnetti() {
if($this->attiva)
if(mysql_close($this->dbConnection)) {
$this->attiva = false;
return true;
} else return false;
}
//funzione per l'esecuzione delle query
public function query($sql) {
if(isset($this->attiva)) {
if ( ($val = $this->tipoQuery($sql)) == "SELECT")
$this->dbResult = mysql_query($sql) or die (mysql_error());
else {
mysql_query("BEGIN");
$this->dbResult = mysql_query($sql);
if(!$this->dbResult) {
mysql_query("ROLLBACK");
die (mysql_error());
} else mysql_query("COMMIT");
}
return $this->dbResult;
} else return false;
}
//Estrai i dati
public function estrai($result, $limit=0) {
$array = array();
$r = array();
if ( isset( $this->attiva ) ) {
while ( $rows = mysql_fetch_assoc($result) )
array_push($array,$rows);
return $array;
if ( $limit == 1) {
foreach ( $array as $key => $value )
$r[$key] = $value;
return $r[0];
} else return $array;
}
}
public function conta($r){
return mysql_num_rows($r);
}
}
Ma nonostante io esegua correttamente la query, essa mi ritorna una sola riga invece di dueCodice PHP:include('../lib/class.db.php');
$db = new DBO;
if ($db->connetti()===true){
$sql_all="SELECT * FROM images WHERE 1";
$result = $db->estrai($db->query($sql_all));
if (count($result)>0){
foreach($result as $v)
echo "[*]".$v['thumb'].$v['image']."";
} else echo "[*]Nessuna immagine disponibile";
$db->disconnetti();
}
Ringrazio tutti in anticipo

Rispondi quotando