2010-10-23 6 views
0

Je me demandais si vous pouviez me diriger dans la bonne direction. Im étendant la classe mysqli mais cant semblent appeler la fonction d'erreur ..mysqli php extend

<?php 

class mysqli_ls extends mysqli 
{ 
    private $activeConnection = 0; 
    private $linkArr = array(); 
    private $queryArr = array(); 
    private $errorArr = array(); 

    public function __construct() 
    { 
    } 

/* Connection ************************************************************ */ 

    public function connect($host='', $username='', $password='', $port='', $database='') 
    { 
     $no =& $this->activeConnection; 
     $no++; 

     if (empty($host) || empty($username) || empty($password) || empty($port) || empty($database)) 
     { 
     $this->setError('1', 'connect','missing required variables'); 
     return false; 
     } 

     $this->linkArr[ $no ] = parent::mysqli($host,$username,$password); 

     if ($this->linkArr[ $no ] === false) 
     { 
     $this->setError(2, 'connect', parent::error($this->linkArr[ $no ])); 
     return false; 
     } 

     return $no; 
    } 

Erreur fatale: Appel à la méthode mysqli :: error() non définie dans C: \ wamp \ www \ vhdocs \ test \ mysqli.class .php en ligne 31

j'ai aussi essayé parent :: mysqli_error et avait la même erreur ... Je ne vois pas pourquoi je ne peux pas appeler l'erreur .....

+0

Comment appelez-vous la méthode connect? Statiquement? – igorw

+0

bien c'est une extention de classe, donc j'appelle le parent avec: parent :: erreur – Lee

Répondre

2

Essayez $this->error (c'est une propriété , pas une fonction dans le style OO). Voir aussi le examples at the php manual

+0

Quelque chose me gêne ce soir ... +1 à toi. – BoltClock

+0

J'ai été en effet quelque peu surpris par vos remarques, P – Wrikken

+0

J'ai lu .. il est dit qu'une référence à la connexion est nécessaire ... donc c'est une fonction? – Lee