Saya mendapatkan peringatan ini, tetapi program masih berjalan dengan benar.
Kode MySQL menunjukkan kepada saya pesan dalam PHP:
Tidak digunakan lagi: mysql_connect (): Ekstensi mysql tidak digunakan lagi dan akan dihapus di masa mendatang: gunakan mysqli atau PDO sebagai gantinya di C: \ xampp \ htdocs \ task \ media \ new \ connect.inc.php on line 2
connect.inc.php
Halaman saya adalah
<?php
$connect = mysql_connect('localhost','root','');
mysql_select_db('dbname');
?>
Apa artinya ini dan bagaimana cara menghilangkan pesan tersebut?
php
mysql
function
deprecated
Mubashar Ahmed Hassan
sumber
sumber
Jawaban:
Ada beberapa solusi untuk masalah Anda.
Cara dengan MySQLi akan seperti ini:
Untuk menjalankan query database juga sederhana dan hampir identik dengan cara lama:
Matikan semua peringatan yang tidak berlaku lagi termasuk dari mysql_ *:
File yang tepat dan lokasi baris yang perlu diganti adalah "/System/Startup.php> baris: 2" error_reporting (E_All); ganti dengan error_reporting (E_ALL ^ E_DEPRECATED);
sumber
Anda dapat menghapus peringatan dengan menambahkan '@' sebelum mysql_connect.
tetapi seperti peringatan yang memberitahu Anda, gunakan mysqli atau PDO karena ekstensi mysql akan dihapus di masa mendatang.
sumber
Untuk menyembunyikan pesan penghentian untuk ini saja (dan tetap terinformasi tentang penghentian lainnya dalam kode Anda), Anda dapat mengawali koneksi dengan @:
sumber
Fitur yang tidak digunakan lagi di PHP 5.5.x
The ekstensi MySQL asli sekarang tidak berlaku lagi dan akan menghasilkan
E_DEPRECATED
kesalahan saat menghubungkan ke database. Sebagai gantinya, gunakan ekstensi ** MYSQLi atau PDO_MySQL . **Sintaksis:
Juga, ganti semua
mysql_*
fungsi menjadimysqli_*
fungsidari pada
sumber
Peringatan ini ditampilkan karena ekstensi baru telah muncul. Ini mendukung bahwa Anda masih dapat menggunakan yang lama tetapi dalam beberapa kasus tidak mungkin.
Saya tunjukkan bagaimana saya melakukan koneksi dengan database. Anda hanya perlu mengubah nilai variabel.
File koneksi saya: connection.php
Ekstensi juga berubah saat melakukan kueri.
File Permintaan: "example.php"
Cara ini menggunakan MySQL Improved Extension , tetapi Anda dapat menggunakan PDO (PHP Data Objects) .
Metode pertama hanya dapat digunakan dengan database MySQL, tetapi PDO dapat mengelola berbagai jenis database.
Saya akan memberikan contoh tetapi perlu dikatakan bahwa saya hanya menggunakan yang pertama, jadi mohon koreksi saya jika ada kesalahan.
File koneksi PDO saya: "PDOconnection.php"
File Permintaan (PDO): "example.php"
Untuk menyelesaikannya cukup katakan bahwa tentu saja Anda dapat menyembunyikan peringatan tetapi itu bukan ide yang baik karena dapat membantu Anda menghemat waktu di masa mendatang jika terjadi kesalahan (kita semua tahu teorinya tetapi jika Anda bekerja berjam-jam kadang-kadang .. . otak tidak ada ^^).
sumber
Itu karena Anda menggunakan PHP 5.5 atau server web Anda akan ditingkatkan ke 5.5.0.
The
mysql_*
fungsi telah usang sebagai dari 5.5.0Source
sumber
mysql_ *, secara resmi tidak digunakan lagi pada PHP v5.5.0 dan akan dihapus di masa mendatang.
Gunakan fungsi mysqli_ * atau pdo
Baca Oracle Mengonversi ke MySQLi
sumber
Ini hanya peringatan yang memberitahu Anda untuk mulai menggunakan metode yang lebih baru untuk menghubungkan ke db Anda seperti objek pdo
http://code.tutsplus.com/tutorials/php-database-access-are-you-doing-it-correctly--net-25338
Manualnya ada di sini
http://www.php.net/manual/en/book.pdo.php
sumber
Peringatan "deprecated" secara umum berarti Anda mencoba menggunakan fungsi yang sudah usang. Ini tidak berarti bahwa kode Anda tidak akan berfungsi, tetapi Anda harus mempertimbangkan pemfaktoran ulang.
Dalam kasus Anda functons mysql_ tidak digunakan lagi. Jika Anda ingin tahu lebih banyak tentang itu, berikut adalah penjelasan yang bagus: Mengapa saya tidak menggunakan fungsi mysql_ * di PHP?
sumber
Ini akan menyelesaikan masalah Anda.
sumber
Kelas PDO menggantikan metode ini. Contoh untuk Mysql atau MariaDB:
Sumber: Kelas PDO
sumber
Jika Anda telah melakukan pengkodean maka
adalah pilihan yang bagus tetapi jika Anda baru memulai, maka Anda harus menggunakan mysqli.
sumber
Nah, saya baru saja menghadapi pesan seperti itu hari ini ketika saya pindah ke hosting baru! bagaimanapun saya telah mencoba untuk mengubah "mySQL" menjadi "mySQLi" tetapi tidak berfungsi, jadi saya telah melakukan ini:
Triknya adalah dengan menonaktifkan pelaporan kesalahan :)
Untuk PHP 7+ Anda dapat menggunakan kode ini sebagai gantinya:
Terima kasih
sumber
ini_set('display_errors', 0); ini_set('log_errors', 1);
. Saya akan memperbarui jawaban di atas. Terima kasih.letakkan ini di halaman php Anda.
sumber
Menambahkan
@
karya untuk saya!Saya diuji dengan
error_reporting(E_ALL ^ E_DEPRECATED);
sumber