PHP-Upgrade: mysql_*-Funktionen können nicht verwendet werden
Nach dem Upgrade auf PHP 5.5.0 von einer früheren Version wie PHP 5.2.0 , können Entwickler auf Probleme mit veralteten mysql_*-Funktionen stoßen. Ein häufiger Fehler ist:
Deprecated: mysql_real_escape_string()
Um dieses Problem zu beheben, wird empfohlen, veraltete mysql_-Funktionen durch ihre mysqli_-Gegenstücke zu ersetzen. Beispielsweise sollte mysqli_real_escape_string() anstelle von mysql_real_escape_string() verwendet werden.
Es ist jedoch wichtig zu beachten, dass mysqli_real_escape_string() zwei Parameter erfordert: eine Verbindungsvariable und den Escape-String. Beim Versuch, mysqli_real_escape_string() mit nur einem Argument zu verwenden, kann der folgende Fehler auftreten:
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in
Um diesen Fehler zu beheben, muss die Verbindungsvariable als erstes Argument übergeben werden. Diese Variable wird erhalten, indem mit mysqli_connect() eine Verbindung zur Datenbank hergestellt wird:
<code class="php">$connection = mysqli_connect("host", "username", "password", "database");</code>
Das bereitgestellte Codebeispiel kann überarbeitet werden, um mysqli_real_escape_string() korrekt zu verwenden:
<code class="php">$username = mysqli_real_escape_string($connection, $username); $password = mysqli_real_escape_string($connection, $password);</code>
Das ist es Es ist wichtig, PHP-Kenntnisse regelmäßig zu aktualisieren, um über die neuesten Best Practices auf dem Laufenden zu bleiben und solche Fehler zu vermeiden. Erwägen Sie alternativ die Verwendung eines Datenbankobjekts, um eine Verbindung zur Datenbank herzustellen und das Escape automatisch zu verarbeiten.
Das obige ist der detaillierte Inhalt vonWarum funktionieren mysql_*-Funktionen nach dem PHP-Upgrade auf 5.5.0 nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!