j'ai un problème basique d'héritage de class, je viens de créer deux classes : la première qui me connect à la base de donnée et réalisé toutes les fonctions correspondantes et la seconde qui est l'extention de la première se nommant arti...
CODE
class sql_db
{
var $db_connect_id;
var $query_result;
function sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true)
{
etc etc...
{
var $db_connect_id;
var $query_result;
function sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true)
{
etc etc...
et la seconde
CODE
class arti extends sql_db {
public $db;
public function arti()
{
$this->sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true);
}
public function last_arti($num,$typ)
{
$tabarti = array();
$sql="SELECT * FROM arti WHERE typ='$typ' order by id DESC limit $num";
$result = $this->sql_query($sql) OR die(mysql_error());
while($aff = $this->sql_fetchrow($result));
{
$tabarti[$aff['id']] = array('pict' => $aff['pict'],'num' => $aff['num'],'typ' => $aff['typ']);
}
return $tabarti;
etc...
public $db;
public function arti()
{
$this->sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true);
}
public function last_arti($num,$typ)
{
$tabarti = array();
$sql="SELECT * FROM arti WHERE typ='$typ' order by id DESC limit $num";
$result = $this->sql_query($sql) OR die(mysql_error());
while($aff = $this->sql_fetchrow($result));
{
$tabarti[$aff['id']] = array('pict' => $aff['pict'],'num' => $aff['num'],'typ' => $aff['typ']);
}
return $tabarti;
etc...
et enfin l'appel
CODE
$db = new sql_db('localhost','root','','bdd', false);
$manews = new arti();
$tab = $manews->last_arti(5,1);
foreach ($tab as $news_id=>$new)
{
echo '<b>'.$new[num].'</b>';
}
$manews = new arti();
$tab = $manews->last_arti(5,1);
foreach ($tab as $news_id=>$new)
{
echo '<b>'.$new[num].'</b>';
}
ce qui s'affiche a l'écran est : "No database selected"
ma faute est normalement au niveau de l'extension de classe, car j'ai vérifié chaque classe en autonome elles marchent toutes les deux ... je commence avec les class php et ça marche plutot bien jusque là ... l'extension de class c'est chaud ...
Merci d'avance pour votre aide