mysql_connect mysqli Warnhinweis

Guten Morgen,

Seit dem Update auf die Version 4 erhalte ich einen Warnhinweis (siehe Bild)
mysqli dll in den Ordner ext kopiert, php.ini um den Eintrag erweitert, script geändert in mysqli_connect.
Hat nicht funktioniert.
Wie ist die Vorgehensweise, kann mir jemand auf die Sprünge helfen ?

Hast du den Dienst neu gestartet? Was funktioniert denn nicht?

paresy

kommt dieser Fehler

Hast du die MySQLi Extension denn installiert? Paket hier: http://windows.php.net/downloads/releases/archives/php-5.6.18-Win32-VC11-x86.zip

paresy

OK, neue DLL installiert, Connection String umgebastelt, jetzt funktioniert es.
Danke

Sabl

und wie mache ich das ganze unter Debian?
Ausserhalb der „Symcon-Welt“ läuft der mysql server (5.5).

Gruß Maik

Genau so, SQL Server ist ja „nur“ Teil des Connect Strings.

Das wäre der Test der ausgeführt werden sollte

$servername = "localhost";
$username = "symcon";
$password = "blabla";
$db = "symcon";

$conn = new mysqli($servername, $username, $password, $db);

if ($conn->connect_error) {
	die("Verbindung fehlgeschlagen " . $conn->connect_error);
} else {
	echo "Verbindung hergestellt";
}

$sql = "UPDATE test SET timestamp=9876543210 WHERE value=10099";

if (mysqli_query($conn, $sql)) {
    echo "Eintrag geschrieben";
} else {
    echo "Fehler beim Schreiben: " . mysqli_error($conn);
}
mysqli_close($conn);

Der läuft aber nicht.
Aus der Konsole heraus könnte ich das ja noch verstehen, aber ich habe das jetzt über ein Ereignis starten lassen. Nüx

Unter Linux kann ich ja schlecht DLLs installieren. Tippe eher auf einen Eintrag in der php.ini. Aber wie und wo?

Gruß Maik

Was geht denn nicht? Andere haben es erfolgreich in Benutzung, du hast also bestimmt irgendwas falsch im Skript :wink:

paresy

Hallo Paresy,

Du sagtest:

Hast du die MySQLi Extension denn installiert? Paket hier: 404 - File or directory not found.

Was genau muss ich da bei einem Windows Server machen? Nur die php_mysqli.dll in den IP-SYMCON Root Folder oder in den ext-Folder legen und neu starten?

Ich hatte heute versucht auf die Version 4 umzustellen und meine exessive SQL-Nutzung hat mir tausende Fehlermeldungen geworfen. Nun möchte ich die Umstellung in der Version 3.4 vorbereiten/testen.
Das sollte doch gehen oder? Ich bekomme aber dauernd noch: „Class mysqli not found“

Gruß aus Wiesbaden
Dieter

Hi Babba,

ich hab die sowohl unter 3.4 (w7) als auch unter 4.0 (w10) nur im ext-Verzeichnis und läuft.

Hast Du den dienst neu gestartet?

Was sagt denn die Log?

Hallo Wolfgang,

Danke für die schnelle Antwort. Ja, ich habe das File ‚php_mysqli.dll‘ in den ext-Folder getan und die php.ini ergänzt.
Dann den Service neu gestartet.

Testen wollte ich folgenden Code:

<?
include("Konstanten.ips.php");
$mysqli = new mysqli($server, $user, $password, $database);
if ($mysqli->connect_errno) {
    echo "Failed to connect to MySQL: " . $mysqli->connect_error;
}
?>

In der zweiten Zeile wird dann abgebrochen mit: „Fatal error: Class ‚mysqli‘ not found in …“

Hat jemand einen Tipp für mich ?

Gruß Dieter

Den gleichen wie Wolfgang; Schau in das Logfile.
Da sagt dir IPS was mit der dll nicht stimmt.
Michael

Hallo Michael - Danke für den Hinweis!

BINGO ! Das war die Lösung, ich hatte eine falsche PHP Revision geladen.

Hätte ich auch alleine drauf kommen können - aber man wird halt nicht jünger :wink:

Schönen Tag noch und Gruß aus Wiesbaden
Dieter