Rumah  >  Artikel  >  pangkalan data  >  Mengapa Fungsi mysql_* Saya Tidak Berfungsi Selepas Menaik taraf kepada PHP 5.5.0?

Mengapa Fungsi mysql_* Saya Tidak Berfungsi Selepas Menaik taraf kepada PHP 5.5.0?

Susan Sarandon
Susan Sarandonasal
2024-11-05 15:56:02165semak imbas

Why Are My mysql_* Functions Not Working After Upgrading to PHP 5.5.0?

Kesukaran Menggunakan Fungsi mysql_* selepas Peningkatan PHP

Pengguna yang menaik taraf kepada PHP 5.5.0 mungkin menghadapi masalah apabila cuba menggunakan fungsi mysql_*, kerana fungsi ini telah ditamatkan dalam versi ini.

Memahami Isu

Salah satu ralat biasa yang dihadapi ialah "Ditamatkan: mysql_real_escape_string()". Ini menunjukkan bahawa fungsi mysql_real_escape_string() tidak lagi disokong. Percubaan untuk menggantikannya dengan mysqli_real_escape_string() mengakibatkan ralat lain, "Amaran: mysqli_real_escape_string() menjangkakan tepat 2 parameter, 1 diberikan".

Menyelesaikan Masalah

Kepada menyelesaikan masalah ini, adalah disyorkan untuk beralih kepada menggunakan sambungan mysqli dan bukannya sambungan mysql. Ini memerlukan kemas kini pada kod PHP anda untuk menggunakan fungsi mysqli.

Kod PHP yang disemak

Berikut ialah versi semakan kod yang disediakan sebagai contoh:

<code class="php"><?php

require_once("includes/session.php");
require_once("connections/connection.php");
require_once("includes/functions.php");

// ... (remainder of the PHP code)

$connection = mysqli_connect("host", "my_user", "my_password", "my_db");

// ... (remainder of the PHP code)

$username = mysqli_real_escape_string($connection, $username);
$password = mysqli_real_escape_string($connection, $password);

// ... (remainder of the PHP code)

// ... (mysqli alternative not shown in detail)

if (isset($connection)) {
    mysqli_close($connection);
}

?></code>

Kesimpulan

Naik taraf kepada PHP 5.5.0 memerlukan pelarasan keserasian dalam kod PHP sedia ada. Peralihan kepada sambungan mysqli dan menggunakan fungsinya ialah penyelesaian yang berkesan untuk menyelesaikan isu yang berkaitan dengan fungsi mysql_* yang tidak digunakan lagi.

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

Kenyataan:
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