Heim > Datenbank > MySQL-Tutorial > Hauptteil

Warum sind meine mysql_*-Funktionen nach dem Upgrade von PHP veraltet?

Patricia Arquette
Freigeben: 2024-11-05 13:33:02
Original
635 Leute haben es durchsucht

Why Are My mysql_* Functions Deprecated After Upgrading PHP?

Veraltete mysql_*-Funktionen nach PHP-Upgrade: Lösung

Nach dem Upgrade von PHP 5.2.0 auf 5.5.0 können beim Versuch Probleme auftreten um mysql_*-Funktionen zu verwenden. Dies liegt daran, dass diese Funktionen veraltet sind.

Fehler aufgetreten: Veralteter mysql_real_escape_string()

Um dieses Problem zu beheben, ersetzen Sie mysql_real_escape_string() durch sein modernisiertes Gegenstück: mysqli_real_escape_string( ).

Fehler aufgetreten: mysqli_real_escape_string() erwartet 2 Parameter

Bei Verwendung von mysqli_real_escape_string() sind zwei Argumente erforderlich: die Verbindungsvariable und die Zeichenfolge, die maskiert werden soll.

Beispielcode mit Änderungen:

<?php
$connection = mysqli_connect("host", "my_user", "my_password", "my_db");
$username = mysqli_real_escape_string($connection, $username);
$password = mysqli_real_escape_string($connection, $password);

$query = "SELECT * FROM login WHERE username = '{$username}' AND password = '{$password}' AND status=1";
Nach dem Login kopieren

Erwägen Sie die Verwendung eines objektorientierten Ansatzes

Für eine bessere Wartbarkeit sollten Sie dies in Betracht ziehen unter Verwendung einer Datenbankobjektklasse, die die Verbindungsdetails kapselt:

<?php
class Database {
    private $connection;

    public function __construct($host, $user, $password, $database) {
        $this->connection = mysqli_connect($host, $user, $password, $database);
    }

    public function escape($string) {
        return mysqli_real_escape_string($this->connection, $string);
    }

    // Other database operations...
}
Nach dem Login kopieren

Schlussfolgerung:

Durch Befolgen dieser Richtlinien können Entwickler die bei mysql_ aufgetretenen Veraltungsprobleme erfolgreich lösen * Funktioniert nach dem Upgrade von PHP.

Das obige ist der detaillierte Inhalt vonWarum sind meine mysql_*-Funktionen nach dem Upgrade von PHP veraltet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!