GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menghubungkan ke MySQL Menggunakan PHP

Pendahuluan

Untuk mengakses dan menambahkan konten ke MySQL database, Anda harus terlebih dahulu membuat koneksi antara database dan PHP naskah.

Dalam tutorial ini, pelajari cara menggunakan Ekstensi MySQLi dan Objek Data PHP untuk terhubung ke MySQL . Fungsi tradisional mysql_ lama tidak digunakan lagi dan kami tidak akan membahasnya dalam panduan ini.

Prasyarat

  • Hak istimewa CREATE khusus
  • Basis Data MySQL
  • Ekstensi MySQLi atau PDO

2 Cara Menghubungkan ke database MySQL menggunakan PHP

Ada dua cara populer untuk terhubung ke database MySQL menggunakan PHP:

  1. Dengan Ekstensi MySQLi PHP
  2. Dengan Objek Data PHP (PDO)

Panduan ini juga mencakup penjelasan untuk kredensial yang digunakan dalam skrip PHP dan potensi kesalahan yang mungkin Anda temui saat menggunakan MySQLi dan PDO.

Opsi 1:Hubungkan ke MySQL dengan ekstensi MySQL yang ditingkatkan

MySQLi adalah ekstensi yang hanya mendukung database MySQL. Ini memungkinkan akses ke fungsionalitas baru yang ditemukan di sistem MySQL (versi 4.1. dan di atasnya), menyediakan antarmuka berorientasi objek dan prosedural. Ini mendukung pernyataan yang disiapkan sisi server, tetapi bukan pernyataan yang disiapkan sisi klien.

Ekstensi MySQLi disertakan dalam PHP versi 5 dan yang lebih baru.

Script PHP untuk menghubungkan ke database MySQL menggunakan pendekatan prosedural MySQLi adalah sebagai berikut:

<?php
$servername = "localhost";
$database = "database";
$username = "username";
$password = "password";

// Create connection

$conn = mysqli_connect($servername, $username, $password, $database);

// Check connection

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

echo “Connected successfully”;

mysqli_close($conn);

?>

Penjelasan Kredensial

Bagian pertama dari skrip adalah empat variabel (nama server, database, nama pengguna, dan kata sandi) dan nilainya masing-masing. Nilai ini harus sesuai dengan detail koneksi Anda.

Berikutnya adalah fungsi utama PHP mysqli_connect() . Ini membuat koneksi dengan database yang ditentukan.

Berikut ini adalah “pernyataan if .” Ini adalah bagian dari kode yang menunjukkan apakah koneksi telah dibuat. Ketika koneksi gagal, itu memberikan pesan Koneksi gagal . Mati fungsi mencetak pesan dan kemudian keluar keluar dari skrip.

Jika koneksi berhasil, ini akan menampilkan “Tersambung berhasil .”

Ketika skrip berakhir, koneksi dengan database juga ditutup. Jika Anda ingin mengakhiri kode secara manual, gunakan mysqli_close fungsi.

Opsi 2:Terhubung Ke MySQL Dengan PDO

Objek Data PHP (PDO) adalah ekstensi yang berfungsi sebagai antarmuka untuk menghubungkan ke database. Tidak seperti MySQLi, ia dapat melakukan fungsi database apa pun dan tidak terbatas pada MySQL. Ini memungkinkan fleksibilitas di antara database dan lebih umum daripada MySQL. PDO mendukung pernyataan yang disiapkan server dan sisi klien.

Kode PHP untuk menghubungkan ke database MySQL melalui ekstensi PDO adalah:

<?php

$servername = "localhost";
$database = "database";
$username = "username";
$password = "password";
$charset = "utf8mb4";

try {

$dsn = "mysql:host=$servername;dbname=$database;charset=$charset";
$pdo = new PDO($dsn, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

echo “Connection Okay”;

return $pdo

}

catch (PDOException $e)

{
echo “Connection failed: ”. $e->getMessage();
}

?>

Sintaks Kredensial

Pertama, kami memiliki lima variabel (nama server, database, nama pengguna, kata sandi, dan rangkaian karakter) dan nilainya. Nilai ini harus sesuai dengan detail koneksi Anda.

Nama server akan menjadi localhost . Jika terhubung ke server online, ketik nama server dari server tersebut.

Variabel charset memberitahu database di mana pengkodean itu akan menerima dan mengirim data. Standar yang disarankan adalah utf8mb4 .

Coba dan Tangkap Blok

Aset besar PDO adalah memiliki pengecualian kelas untuk menangani masalah potensial dalam kueri basis data. Ini memecahkan masalah ini dengan memasukkan coba dan tangkap blok.

Jika masalah muncul saat mencoba menyambung, itu berhenti berjalan dan mencoba untuk menangkap dan memecahkan masalah. Tangkap blok dapat disetel untuk menampilkan pesan kesalahan atau jalankan kode alternatif .

Parameter pertama di coba dan tangkap blok adalah DSN, yang merupakan singkatan dari nama sumber data(basis) . Ini sangat penting karena mendefinisikan jenis dan nama database, bersama dengan informasi tambahan lainnya.

Dalam contoh ini, kami menggunakan database MySQL. Namun, PDO mendukung berbagai jenis database. Jika Anda memiliki database yang berbeda, ganti bagian sintaks tersebut (mysql ) dengan database yang Anda gunakan.

Berikutnya adalah PDO variabel. Variabel ini akan membuat koneksi ke database. Ini memiliki tiga parameter:

  1. Nama sumber data (dsn)
  2. Nama pengguna untuk database Anda
  3. Kata sandi untuk database Anda

Berikut adalah metode setAttribute menambahkan dua parameter ke PDO:

  1. PDO::ATTR_ERRMODE
  2. PDO::ERRMODE_EXCEPTION

Metode ini menginstruksikan PDO untuk menjalankan pengecualian jika kueri gagal.

Tambahkan gema “Koneksi Oke .” untuk mengonfirmasi koneksi telah dibuat.

Kembalikan variabel PDO untuk terhubung ke database.

Setelah mengembalikan variabel PDO, tentukan PDOException dalam tangkapan blokir dengan menginstruksikannya untuk menampilkan pesan saat koneksi gagal.

Kesalahan Potensial dengan MySQLi dan PDO

Sandi Salah

Kata sandi dalam kode PHP harus sesuai dengan yang ada di database. Jika keduanya tidak cocok, koneksi dengan database tidak dapat dibuat. Anda akan menerima pesan kesalahan yang mengatakan koneksi gagal .

Solusi yang memungkinkan :

  1. Periksa detail database untuk memastikan kata sandi sudah benar.
  2. Pastikan ada pengguna yang ditugaskan ke database.

Tidak Dapat Terhubung ke Server MySQL

PHP mungkin tidak dapat terhubung ke server MySQL jika nama server tidak dikenali. Pastikan nama server disetel ke localhost .

Jika terjadi kesalahan lain, pastikan untuk membaca error_log file untuk membantu ketika mencoba memecahkan masalah apa pun. File terletak di folder yang sama tempat skrip dijalankan.


Cent OS
  1. Cara Menginstal Server Database MySQL 8 di CentOS 8

  2. Cara Membuat Database di MySQL Menggunakan Command Line

  3. Cara Menginstal MySQL 8.0 di CentOS/RHEL 8

  1. Cara Backup dan Restore Database MySQL Menggunakan Command Line

  2. Cara Menginstal Server Database MySQL di CentOS

  3. Cara Menghubungkan ke Database MySQL dari Jarak Jauh Dari Komputer

  1. Bagaimana menghubungkan jarak jauh ke MySQL

  2. Bagaimana cara mengembalikan database MySQL menggunakan perintah di SSH?

  3. Cara Instal Database MySQL Menggunakan Yum groupinstall di CentOS