Allora.....spero di spiegarmi chiaramente perche proprio non capisco l'errore che ho....
il mio scopo e' quello di contare i record di una tabella.
A parita' di codice di connessione, se provo a estrarre tutti i recor e visualizzarli ......tutto ok . ...funzia......se invece provo a usare la funzione che conta i record l'errore che ho e' non riesco a selezionare il db.
Andiamo per ordine....provero' a postare tutto il codice che uso.....
La connessione viene fatta da file esterno che includo in ogni pagina. Il file e' DbConfig.inc.php ed e' cosi formato
<?php
$user = "sleoni";
$host ="localhost";
$password = "password";
$database = "news";
?>
per connettermi uso una classe DataBase.class.php che nel costruttore fa la connessione. Cosi:
<?php
class DataBase
{
var $conn = -1;
function setConn($conn)
{
$this->conn = $conn;
}
function getConn()
{
return $this->conn;
}
function DataBase($host,$user,$password)
{
$this->conn = mysql_connect($host, $user,$password)or die("non riesco a effettuare la connessione" . mysql_error());
}
function selectDb($database)
{
$status = mysql_select_db($database, $this->getConn())or die("non riesco a selezionare il db". mysql_error());
return $status;
}
} //chiusura classe
sulla pagina visualizza scrivo cosi
include_once ("../db/DataBase.class.php");
$db = new DataBase($host,$user,$password);
$db->selectDb($database);
questo ha sempre funzionato. ma attenzione ......
Sempre nella pagina DataBase.class.php ho anche le funzioni che fan le query.
QUESTA DA PROBLEMI
function countPage()
{
$sql = "select count(id_news) from news";
$result = mysql_db_query($sql, $this->conn)or die ("errore : " mysql_error()); return $result;
}
quando la uso scrivo cosi
$result = $db->countPage();
while($riga=mysql_fetch_array($result))
{
echo($riga);
}
ma anche scrivendo cosi non va :
$array_appo = mysql_fetch_array($result);
echo $array_appo['count(id_news)'];
IL PROBLEMA E' che dice questo :
errore : Unknown database 'select count(id_news) from news'