Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Kesalahan koneksi PHP dengan database

mysqli_select_db fungsi, saat menggunakan API prosedural mengharuskan Anda untuk melewati koneksi aktual sebagai parameter pertama, seperti yang ditunjukkan pada halaman manual . Koneksi atau tautan ini adalah mysqli_connect kembali, jadi Anda tidak boleh mengabaikan apa mysqli_connect kembali , tetapi tetapkan ke variabel.
Tanda tangan fungsi dengan jelas memberi tahu Anda semua ini, jadi tolong, RTM . Berikut adalah beberapa upaya copy-paste:

                            \/=============================|
bool mysqli_select_db ( mysqli $link , string $dbname )   ||
//returns bool         argument 1       argument 2        ||
mysqli mysqli_connect ([...])                             ||
//returns type mysqli  accepts vast number of arguments   ||
              //                                          ||
              |======== useful here =======================|

Ini berarti Anda harus menulis:

$db = mysqli_connect('localhost', 'root', '');
mysqli_select_db($db, 'video_system');

Seperti tampilan manual &&tanda tangan, mysqli_select_db . ini mengembalikan bool. true berarti DB berhasil dipilih, false menunjukkan kegagalan. Sebaiknya biasakan memeriksa nilai pengembalian fungsi . Tidak peduli seberapa sepele kelihatannya. Jadi:

$db = mysqli_connect('localhost', 'root', '');
if (!mysqli_select_db($db, 'video_system'))
{//if return value is false, echo error message and exit script
    echo 'Failed to select db "video_system": ', mysqli_error($db), PHP_EOL;
    $db = null;//optional, but generally safer
    exit(1);//stop execution
}
//db selected, get to work here

Tetapi Anda dapat dengan mudah menghilangkan panggilan fungsi kedua ini, dengan meneruskan nama DB pilihan ke mysqli_connect fungsi dari mati:

$db = mysqli_connect('127.0.0.1', 'root', '', 'video_system');

Yang menghemat biaya panggilan fungsi tambahan, yang sedikit meningkatkan kinerja. Saya juga telah mengubah localhost string ke alamat IP 127.0.0.1, yang juga dapat membantu, karena menggunakan IP berarti string tidak perlu diselesaikan ke alamat IP yang sesuai.
Secara keseluruhan, saya pikir sebaiknya Anda meluangkan waktu membaca dokumentasi




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana menghubungkan ke mysql dari C# melalui SSH

  2. Ekspor MySQL ke outfile:karakter pelarian CSV

  3. Apakah mungkin menggunakan Crosstab/Pivot Query di MySQL?

  4. Pemetaan Hubungan Hibernasi/Percepat penyisipan batch

  5. Kesalahan MySql:Tidak dapat memperbarui tabel dalam fungsi/pemicu yang disimpan