man sollte noch unbedingt unter administration - system - systemvariablen
den eingestellten wert von $cfg["database_extension"] irgendwo bei den einstellungen mit aufzeigen...
noch was zu db_mysqli.inc
function connect
Code: Alles auswählen
$this->Link_ID = @mysqli_connect($sHost, $User, $Password, "", $sPort);
} else {
$this->Link_ID = @mysqli_connect($Host, $User, $Password);
da gibts ein kleines problem...
sollte ein connect nicht möglich sein, wird $this->Link_ID auf false gesetzt...
fehlermeldung erscheint aufgrund des @ keine (logisch)...
in weiterer folge wird dann ja
Code: Alles auswählen
if (!$this->Link_ID)
{
$this->halt("connect($Host, $User, \$Password) failed.");
return 0;
}
aufgerufen... was ja noch funktioniert...
aber dann gibts nen fehler bei
Code: Alles auswählen
function halt($msg)
{
$this->Error = mysqli_error($this->Link_ID);
$this->Errno = mysqli_errno($this->Link_ID);
Code: Alles auswählen
PHP Warning: mysqli_errno() expects parameter 1 to be mysqli, boolean given in e:\contenido\contenido-4.5.6\contenido-4.5.6\conlib\db_mysqli.inc on line 477
mysqli_error() oder mysqli_errno() funktioniert nicht ohne angabe der Link_ID
die korrekte fehlermeldung erhält man nur wenn man mysqli_connect_error bedient...
na wie auch immer ich würde vorschlagen
Code: Alles auswählen
if (!$this->Link_ID)
{
$this->halt("connect($Host, $User, \$Password) failed.");
return 0;
}
ersetzen durch
Code: Alles auswählen
if (!$this->Link_ID)
{
$this->halt("connect($Host, $User, \$Password) failed: ".mysqli_connect_error());
return 0;
}
und
Code: Alles auswählen
function halt($msg)
{
$this->Error = mysqli_error($this->Link_ID);
$this->Errno = mysqli_errno($this->Link_ID);
durch
Code: Alles auswählen
function halt($msg)
{
if ($this->Link_ID) {
$this->Error = mysqli_error($this->Link_ID);
$this->Errno = mysqli_errno($this->Link_ID);
}
ersetzen...
den spruch muss noch anbringen(hier gefunden:
http://www.zend.com/php5/articles/php5-mysqli.php ):
The extension is called ext/mysqli, with the 'i' standing for any one of: improved, interface, ingenious, incompatible or incomplete.