PHP MySQLFungsi: mysqli_query, mysqli_connect, mysqli_fetch_array
PHP memiliki banyak koleksi fungsi bawaan untuk memanipulasi MySQL database.
Fungsi PHP mysqli_connect
Fungsi PHP mysql connect digunakan untuk menghubungkan ke MySQL server basis data.
Ia memiliki sintaksis sebagai berikut.
<?php; $db_handle = mysqli_connect($db_server_name, $db_user_name, $db_password); ?>
SINI,
- “$db_handle” adalah variabel sumber daya koneksi database.
- “mysqli_connect(…)” adalah fungsi untuk koneksi database php
- “$server_name” adalah nama atau alamat IP server hosting MySQL Server.
- “$user_name” adalah nama pengguna yang valid MySQL Server.
- “$password” adalah kata sandi valid yang dikaitkan dengan nama pengguna di MySQL Server.
Fungsi PHP mysqli_select_db
Fungsi mysqli_select_db digunakan untuk memilih basis data.
Ia memiliki sintaksis sebagai berikut.
<?php mysqli_select_db($db_handle,$database_name); ?>
SINI,
- “mysqli_select_db(…)” adalah fungsi pemilihan database yang mengembalikan nilai benar atau salah
- “$database_name” adalah nama database
- “$link_identifier” bersifat opsional, digunakan untuk meneruskan tautan koneksi server
Fungsi PHP mysqli_query
Fungsi mysqli_query digunakan untuk mengeksekusi SQL pertanyaan.
Fungsi ini dapat digunakan untuk mengeksekusi jenis kueri berikut;
- Menyisipkan
- Pilih
- Memperbarui
- hapus
Ia memiliki sintaksis sebagai berikut.
<?php mysqli_query($db_handle,$query) ; ?>
SINI,
- “mysqli_query(…)” adalah fungsi yang mengeksekusi query SQL.
- “$query” adalah kueri SQL yang akan dieksekusi
- “$link_identifier” bersifat opsional, dapat digunakan untuk meneruskan tautan koneksi server
Fungsi PHP mysqli_num_rows
Fungsi mysqli_num_rows digunakan untuk mendapatkan jumlah baris yang dikembalikan dari kueri pemilihan.
Ia memiliki sintaksis sebagai berikut.
<?php mysqli_num_rows($result); ?>
SINI,
- “mysqli_num_rows(…)” adalah fungsi penghitungan baris
- “$result” adalah kumpulan hasil mysqli_query
Fungsi PHP mysqli_fetch_array
Fungsi mysqli_fetch_array digunakan untuk mengambil array baris dari kumpulan hasil kueri.
Ia memiliki sintaksis sebagai berikut.
<?php mysqli_fetch_array($result); ?>
SINI,
- “mysqli_fetch_array(…)” adalah fungsi untuk mengambil array baris
- “$result” adalah hasil yang dikembalikan oleh fungsi mysqli_query.
Fungsi PHP mysqli_close
Fungsi mysqli_close digunakan untuk menutup koneksi basis data yang terbuka.
Ia memiliki sintaksis sebagai berikut.
<?php mysqli_close($db_handle); ?>
SINI,
- “mysqli_close(…)” adalah fungsi PHP
- “$link_identifier” bersifat opsional, digunakan untuk meneruskan sumber daya koneksi server
Mari kita lihat contoh praktis yang memanfaatkan fungsi-fungsi ini.
Menciptakan MySQL database Tutorial ini mengasumsikan pengetahuan tentang MySQL dan SQL, jika istilah ini asing bagi Anda, lihat kami MySQL dan tutorial SQL.
Kami akan membuat database sederhana bernama my_personal_contacts dengan satu tabel saja.
Berikut langkah-langkah membuat database dan tabel.
- Terhubung ke MySQL menggunakan alat akses favorit Anda seperti MySQL workbench, phpMyAdmin dll.
- Buat database bernama my_person_contacts
- Jalankan skrip yang ditunjukkan di bawah ini untuk membuat tabel dan memasukkan beberapa data dummy
<?php CREATE TABLE IF NOT EXISTS `my_contacts` ( `id` int(11) NOT NULL AUTO_INCREMENT, `full_names` varchar(255) NOT NULL, `gender` varchar(6) NOT NULL, `contact_no` varchar(75) NOT NULL, `email` varchar(255) NOT NULL, `city` varchar(255) NOT NULL, `country` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ; INSERT INTO `my_contacts` (`id`, `full_names`, `gender`, `contact_no`, `email`, `city`, `country`) VALUES (1, 'Zeus', 'Male', '111', 'zeus @ olympus . mt . co', 'Agos', 'Greece'), (2, 'Anthena', 'Female', '123', 'anthena @ olympus . mt . co', 'Athens', 'Greece'), (3, 'Jupiter', 'Male', '783', 'jupiter @ planet . pt . co', 'Rome', 'Italy'), (4, 'Venus', 'Female', '987', 'venus @ planet . pt . co', 'Mars', 'Italy'); ?>
Kami sekarang memiliki pengaturan database yang akan kami manipulasi dari PHP.
Membaca record dari database Sekarang kita akan membuat program yang mencetak record dari database.
<?php $dbh = mysqli_connect('localhost', 'root', 'melody'); //connect to MySQL server if (!$dbh) die("Unable to connect to MySQL: " . mysqli_error()); //if connection failed output error message if (!mysqli_select_db($dbh,'my_personal_contacts')) die("Unable to select database: " . mysqli_error()); //if selection fails output error message $sql_stmt = "SELECT * FROM my_contacts"; //SQL select query $result = mysqli_query($dbh,$sql_stmt); //execute SQL statement if (!$result) die("Database access failed: " . mysqli_error()); //output error message if query execution failed $rows = mysqli_num_rows($result); // get number of rows returned if ($rows) { while ($row = mysqli_fetch_array($result)) { echo 'ID: ' . $row['id'] . '<br>'; echo 'Full Names: ' . $row['full_names'] . '<br>'; echo 'Gender: ' . $row['gender'] . '<br>'; echo 'Contact No: ' . $row['contact_no'] . '<br>'; echo 'Email: ' . $row['email'] . '<br>'; echo 'City: ' . $row['city'] . '<br>'; echo 'Country: ' . $row['country'] . '<br><br>'; } } mysqli_close($dbh); //close the database connection ?>
Mengeksekusi kode di atas akan mengembalikan hasil yang ditunjukkan pada diagram di bawah ini
Memasukkan catatan baru
Sekarang mari kita lihat contoh yang menambahkan record baru ke dalam tabel kita. kode di bawah ini menunjukkan implementasinya.
<?php $dbh = mysqli_connect('localhost', 'root', 'melody'); //connect to MySQL server if (!$dbh) die("Unable to connect to MySQL: " . mysqli_error()); //if connection failed output error message if (!mysqli_select_db($dbh,'my_personal_contacts')) die("Unable to select database: " . mysql_error()); //if selection fails output error message $sql_stmt = "INSERT INTO `my_contacts` (`full_names`,`gender`,`contact_no`,`email`,`city`,`country`)"; $sql_stmt .= " VALUES('Poseidon','Mail','541',' poseidon @ sea . oc ','Troy','Ithaca')"; $result = mysqli_query($dbh,$sql_stmt); //execute SQL statement if (!$result) die("Adding record failed: " . mysqli_error()); //output error message if query execution failed echo "Poseidon has been successfully added to your contacts list"; mysqli_close($dbh); //close the database connection ?>
Menjalankan keluaran kode di atas "Poseidon telah berhasil ditambahkan ke daftar kontak Anda" kembali ke contoh kueri pemilihan dan ambil kembali kontak Anda.
Lihat apakah Poseidon telah ditambahkan ke daftar Anda.
Memperbarui catatan Sekarang mari kita lihat contoh yang memperbarui catatan dalam database.
Misalkan Poseidon telah mengubah nomor kontak dan alamat emailnya.
<?php $dbh = mysqli_connect('localhost', 'root', 'melody'); //connect to MySQL server if (!$dbh) die("Unable to connect to MySQL: " . mysqli_error()); //if connection failed output error message if (!mysqli_select_db($dbh,'my_personal_contacts')) die("Unable to select database: " . mysql_error()); //if selection fails output error message $sql_stmt = "UPDATE `my_contacts` SET `contact_no` = '785',`email` = ' poseidon @ ocean . oc '; //SQL select query $sql_stmt .= " WHERE `id` = 5"; $result = mysqli_query($dbh,$sql_stmt); //execute SQL statement if (!$result) die("Deleting record failed: " . mysqli_error()); //output error message if query execution failed echo "ID number 5 has been successfully updated"; mysqli_close($dbh); //close the database connection ?>
Menghapus catatan
Sekarang mari kita lihat contoh yang menghapus record dari database. Misalkan Venus mempunyai perintah penahanan terhadap kita, dan kita harus menghapus informasi kontaknya dari kita Database.
<?php $dbh = mysqli_connect('localhost', 'root', 'melody'); //connect to MySQL server if (!$dbh) die("Unable to connect to MySQL: " . mysqli_error()); //if connection failed output error message if (!mysqli_select_db($dbh,'my_personal_contacts')) die("Unable to select database: " . mysqli_error()); //if selection failes output error message $id = 4; //Venus's ID in the database $sql_stmt = "DELETE FROM `my_contacts` WHERE `id` = $id"; //SQL Delete query $result = mysqli_query($dbh,$sql_stmt); //execute SQL statement if (!$result) die("Deleting record failed: " . mysqli_error()); //output error message if query execution failed echo "ID number $id has been successfully deleted"; mysqli_close($dbh); //close the database connection ?>
PDO Objek Akses Data PHP
PDO adalah kelas yang memungkinkan kita memanipulasi mesin database yang berbeda seperti MySQL, PostGres, MS SQL Server dll.
Kode di bawah ini menunjukkan metode akses database menggunakan objek PDO.
Catatan: kode di bawah ini mengasumsikan pengetahuan tentang bahasa SQL, array, penanganan pengecualian, dan loop foreach.
<?php try { $pdo = new PDO("mysql:host=localhost;dbname=my_personal_contacts", 'root', 'melody'); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $pdo->exec('SET NAMES "utf8"'); $sql_stmt = "SELECT * FROM `my_contacts`"; $result = $pdo->query($sql_stmt); $result->setFetchMode(PDO::FETCH_ASSOC); $data = array(); foreach ($result as $row) { $data[] = $row; } print_r($data); } catch (PDOException $e) { echo $e->getMessage(); } ?>
SINI,
- “try{…catch…}” adalah blok penanganan pengecualian
- “$pdo = new PDO(“mysql…” membuat instance objek PDO dan meneruskan driver database, nama server dan database, id pengguna, dan kata sandi.
- “$pdo->setAtt…” menyetel atribut mode kesalahan PDO dan mode pengecualian
- “$pdo->exec('SET NA…” mengatur format pengkodean
ODBC ODBC adalah singkatan dari Open Database Connectivity. Sintaks dasarnya adalah sebagai berikut.
<?php $conn = odbc_connect($dsn, $user_name, $password); ?>
SINI,
- “odbc_connect” adalah fungsi bawaan PHP
- “$dsn” adalah nama sumber data ODBC.
- “$user_name” bersifat opsional, digunakan untuk nama pengguna ODBC
- “$password” bersifat opsional, digunakan untuk kata sandi ODBC
Contoh yang digunakan mengasumsikan Anda;
- Sedang Menggunakan Windows OS
- Anda telah membuat tautan ODBC ke angin utara Microsoft Akses database bernama northwind
Di bawah ini adalah kode implementasi akses data ODBC
<?php $dbh = odbc_connect('northwind', '', ''); if (!$dbh) { exit("Connection Failed: " . $dbh); } $sql_stmt = "SELECT * FROM customers"; $result = odbc_exec($dbh, $sql_stmt); if (!$result) { exit("Error access records"); } while (odbc_fetch_row($result)) { $company_name = odbc_result($result, "CompanyName"); $contact_name = odbc_result($result, "ContactName"); echo "<b>Company Name (Contact Person):</b> $company_name ($contact_name) <br>"; } odbc_close($dbh); ?>
Kesimpulan
- MySQL adalah manajemen basis data relasional sumber terbuka yang tersedia di sebagian besar server hosting web
- PHP memiliki banyak koleksi fungsi bawaan yang menyederhanakan pengerjaannya MySQL
- PDO adalah singkatan dari PHP Data Object; ini digunakan untuk terhubung ke mesin database yang berbeda menggunakan objek yang sama
- PHP menggunakan fungsi odbc_connect untuk memanipulasi database melalui ODBC