Penyelesaian kepada PHP Fatal error: Call to undefined function mssql_connect()
Jika anda seorang pembangun PHP, mungkin anda pernah mengalami ralat ini. Ia biasanya berlaku apabila anda cuba menyambung ke pangkalan data Microsoft SQL Server. Dalam artikel ini, kami akan meneroka punca dan penyelesaian kepada masalah ini.
Sebab
Sebelum PHP versi 7.0, pemacu pangkalan data yang digunakan oleh PHP ialah pemacu Microsoft SQL Server (mssql). Walau bagaimanapun, sejak PHP versi 7.0, pemacu ini telah dialih keluar. PHP kini menggunakan pemacu rasmi Microsoft (sqlsrv).
Jika versi PHP anda ialah 7.0 atau lebih tinggi dan anda masih menggunakan fungsi mssql_connect() dalam kod anda, anda akan menghadapi ralat ini.
Penyelesaian
Terdapat dua penyelesaian untuk menyelesaikan masalah ini.
Jika anda menggunakan pemacu mssql dalam versi sebelum PHP 7.0, anda harus meningkatkan kepada PHP 7.0 atau lebih tinggi, dan gunakan pemacu rasmi Microsoft (sqlsrv). Anda boleh mengikuti langkah di bawah untuk memasang dan mendayakan pemacu sqlsrv.
Langkah 1: Muat turun pemacu Microsoft SQL Server
Anda boleh memuat turun versi terkini pemacu Microsoft SQL Server dari tapak web rasmi Microsoft.
Langkah 2: Dayakan sambungan SQLSRV
Selepas muat turun selesai, anda perlu mendayakan sambungan SQLSRV dalam fail konfigurasi PHP. Buka fail php.ini dan tambah kod berikut dalam bahagian sambungan dinamik:
extension=php_pdo_sqlsrv_7_ts.dll
extension=php_sqlsrv_7_ts.dll
Di sini, kami menggunakan PHP 7. x versi fail sambungan. Jika anda menggunakan versi PHP yang lain, anda perlu memilih fail sambungan yang sepadan mengikut versi PHP anda.
Langkah 3: Mulakan semula pelayan web
Selepas melengkapkan semua konfigurasi, anda perlu memulakan semula pelayan web anda untuk memastikan semua perubahan berkuat kuasa.
Kini, anda boleh menggunakan fungsi sqlsrv_connect() untuk menyambung ke pangkalan data Microsoft SQL Server anda.
Jika anda tidak boleh menaik taraf kepada PHP 7.0 atau lebih tinggi dan mesti terus menggunakan pemacu mssql, anda boleh mengikuti langkah di bawah untuk menyelesaikan isu tersebut.
Langkah 1: Muat turun pemacu Microsoft SQL Server
Anda perlu memuat turun pemacu Microsoft SQL Server, tetapi kali ini anda perlu memuat turun pemacu versi lama (versi 3.0).
Langkah 2: Dayakan pemacu MSDASQL
MSDASQL ialah pemacu ODBC yang boleh memetakan sumber data OLE DB kepada sumber data ODBC. Anda perlu mendayakan pemacu MSDASQL dan mengkonfigurasi sumber data SQL Server anda sebagai pembekal OLE DB.
Langkah 3: Konfigurasikan fail php.ini
Buka fail php.ini dan tambah kod berikut dalam bahagian sambungan dinamik:
extension=php_pdo_odbc.dll
extension =php_odbc.dll
Langkah 4: Mulakan semula pelayan web
Selepas melengkapkan semua konfigurasi, anda perlu memulakan semula pelayan web anda untuk memastikan semua perubahan berkuat kuasa.
Kini, anda boleh menggunakan fungsi mssql_connect() untuk menyambung ke pangkalan data Microsoft SQL Server anda.
Kesimpulan
Tidak kira kaedah yang anda pilih, anda boleh menyelesaikan ralat ini. Jika anda boleh menaik taraf kepada PHP 7.0 atau lebih tinggi dan menggunakan pemacu Microsoft SQL Server rasmi (sqlsrv), itu adalah pilihan terbaik. Tetapi jika anda tidak boleh menaik taraf versi, anda juga boleh menyambung menggunakan versi lama pemacu Microsoft SQL Server (mssql). Walau apa pun, anda perlu mengikuti langkah-langkah di atas dengan teliti dan sabar untuk menyelesaikan masalah ini.
Atas ialah kandungan terperinci Penyelesaian kepada ralat Fatal PHP: Panggilan ke fungsi yang tidak ditentukan mssql_connect(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!