Rumah > pangkalan data > tutorial mysql > Mengapa Fungsi mysql_* Saya Dihentikan Selepas Menaik taraf PHP?

Mengapa Fungsi mysql_* Saya Dihentikan Selepas Menaik taraf PHP?

Patricia Arquette
Lepaskan: 2024-11-05 13:33:02
asal
767 orang telah melayarinya

Why Are My mysql_* Functions Deprecated After Upgrading PHP?

Fungsi mysql_* yang ditamatkan Selepas Peningkatan PHP: Resolusi

Selepas menaik taraf daripada PHP 5.2.0 kepada 5.5.0, isu mungkin timbul apabila mencuba untuk menggunakan fungsi mysql_*. Ini disebabkan oleh penamatan fungsi ini.

Ralat Ditemui: Dihentikan mysql_real_escape_string()

Untuk menyelesaikan masalah ini, gantikan mysql_real_escape_string() dengan rakan sejawatannya yang dimodenkan: mysq_string_string ).

Ralat Ditemui: mysqli_real_escape_string() Menjangkakan 2 Parameter

Apabila menggunakan mysqli_real_escape_string(), ia memerlukan dua argumen: pembolehubah sambungan dan rentetan untuk dilepaskan.

Contoh Kod dengan Pengubahsuaian:

<?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";
Salin selepas log masuk

Pertimbangkan Menggunakan Pendekatan Berorientasikan Objek

Untuk meningkatkan kebolehselenggaraan, pertimbangkan menggunakan kelas objek pangkalan data, yang merangkum butiran sambungan:

<?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...
}
Salin selepas log masuk

Kesimpulan:

Dengan mengikuti garis panduan ini, pembangun boleh berjaya menyelesaikan isu penamatan yang dihadapi dengan mysql_ * berfungsi selepas menaik taraf PHP.

Atas ialah kandungan terperinci Mengapa Fungsi mysql_* Saya Dihentikan Selepas Menaik taraf PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan