Utilizzo questa classe per connettermi a un DB
codice:
<?php
class MysqlClass
{
//Variabile privata che serve da controllo sulle connessioni attive
var $attiva = false;
//Funzione per la connessione a MYSQL
function connetti($nomehost, $user, $password, $db)
{
if(!$attiva)
{
if($connessione = mysql_connect($nomehost,$user,$password) or die (mysql_error()));
{
$selezione = mysql_select_db($db,$connessione) or die (mysql_error());
print("entro nel DB");
}
}else{
return true;
print("sono gia connesso");
}
}
function query($sql)
{
if(isset($attiva))
{
$sql = mysql_quey($sql) or die (mysql_error());
print("fatta la query");
return $sql;
}else{
return false;
print("nn sono connesso al momento della query");
}
}
function estrai($risultato)
{
if(isset($attiva))
{
$r = mysql_fetch_object($risultato);
print("ottenuto il risultato");
return $r;
}else{
return false;
print("nn sono connesso al momento della estrazione");
}
}
//Funzione per disconnettersi
function disconnetti()
{
if($attiva)
{
if(mysql_close())
{
if(mysql_close())
{
$attiva = false;
return true;
}else{
return false;
}
}
}
}
}
?>
Ho fatto un pò di debugging e ho scoperto che quando arriva a function estrai in ogni caso, che la connessione sia aperta o no non esegue le istruzioni del if, ma quelle del else.
Quindi non mi estrae quello che mi serve.
La pagina con il quale richiamo questa classe è questa:
codice:
<?php
include "sqlFunction.php";
$host ='localhost';
//User e password sono identici, quindi inserisce una volta sola e io lo uso sia per la pasw che per l'user
$user = $_REQUEST['password'];
$password = $_REQUEST['password'];
$database = 'my_asafarakaratara';
$data = new MysqlClass();
$data->connetti($host,$user,$password,$database);
$stri="select * from log ORDER BY ora DESC";
$dbResult=$data->query($stri);
echo "<table border=\"1\">\n";
while($res = $data->estrai($dbResult)){
echo"\t<tr>\n";
$mod=$res->moderatore;
$ora=$res->ora;
$mes=$res->messaggio;
echo "\t\t<td>".$mod."</td>\n";
echo "\t\t<td>".$ora."</td>\n";
echo "\t\t<td>".$mes."</td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
$data->disconnetti();
?>
Ovviamente non riesco a visualizzare la tabella siccome non riesco ad estrarre.
Potete aiutarmi?