Cara mengambil tambah dan ubah data menggunakan ekstensi php mysqli

Ada banyak cara untuk memasukkan data ke dalam database MySQL, salah satunya melalui kode PHP. Dengan metode MySQLi dan PDO, pengguna dapat memasukkan data ke dalam database MySQL

Tutorial ini akan menunjukkan cara INSERT data ke dalam database MySQL menggunakan skrip PHP

Sebelum kita memulai panduan penyisipan PHP MySQL ini, akses panel kontrol hosting web Anda

Unduh Glosarium Untuk Pemula Web

 

Buat Tabel untuk Data

Langkah pertama adalah membuat tabel untuk data. Jika Anda sudah membuatnya, gulir ke bawah ke bagian berikutnya. Jika tidak, ikuti langkah-langkah ini

  1. Buka phpMyAdmin di panel kontrol hosting Anda

Cara mengambil tambah dan ubah data menggunakan ekstensi php mysqli

  1. Buka u123456789_mydatabase dan buka bagian Buat tabel

Cara mengambil tambah dan ubah data menggunakan ekstensi php mysqli

  1. Beri nama tabel Siswa dan tulis 4 di bidang Jumlah kolom. Klik tombol Go di dekat bagian bawah halaman
  2. Halaman baru akan muncul. Masukkan informasi yang diperlukan untuk tabel

Cara mengambil tambah dan ubah data menggunakan ekstensi php mysqli

  1. Klik Simpan untuk membuat tabel baru

Berikut adalah beberapa penjelasan tentang kolom yang digunakan

  • Nama – Nama kolom. Itu akan muncul di bagian atas tabel
  • Tipe – Tipe data. Anda dapat mengatur berbagai nilai, termasuk int, varchar, dan string. Misalnya, pilih varchar untuk memasukkan nama jenis string, yang menggunakan huruf, bukan angka
  • Panjang/Nilai – Panjang entri maksimum untuk kolom tertentu
  • Indeks – Untuk menghitung entri tabel, yang diperlukan saat mengonfigurasi hubungan tabel. Kami merekomendasikan untuk selalu memiliki satu kolom ID saat membuat tabel. Kami menggunakan indeks Utama untuk bidang ID kami dan menandai A_I, yang artinya Peningkatan Otomatis. Ini secara otomatis mencantumkan entri (1,2,3,4…)

Untuk informasi lebih lanjut tentang struktur tabel dan pengaturan yang tersedia, lihat dokumentasi resmi phpMyAdmin

Cara Memasukkan Ke Tabel Database MySQL

Ada dua metode untuk INSERT data ke dalam database MySQL – metode PHP MySQLi dan metode PHP Data Object (PDO)

Memasukkan Data Menggunakan Metode MySQLi

Pertama, buat koneksi ke database. Saat terhubung, lanjutkan dengan kueri INSERT MySQL. Berikut adalah contoh kode PHP lengkap dengan koneksi dasar dan metode penyisipan

<?php
$servername = "localhost";
$database = "u123456789_mydatabase";
$username = "u123456789_myuser";
$password = "PasSw0rd123@";
// Create a connection
$conn = mysqli_connect($servername, $username, $password, $database);
// Check the connection
if (!$conn) {
     die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
$sql = "INSERT INTO Students (name, lastName, email) VALUES ('Tom', 'Jackson', '[email protected]')";
if (mysqli_query($conn, $sql)) {
     echo "New record created successfully";
} else {
     echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>

Penting. Jika Anda menyiapkan database untuk penggunaan jarak jauh, hosting tidak akan berada di server yang sama dengan database. Anda harus mengatur akses MySQL jarak jauh terlebih dahulu dan menggunakan alamat servernya, bukan localhost

Baris 2-12 dari kode adalah untuk koneksi aktual ke database MySQL. Baris berikut terlihat seperti ini

$sql = "INSERT INTO Students (name, lastName, email) VALUES ('Tom', 'Jackson', '[email protected]')";
_

INSERT INTO adalah pernyataan yang menambahkan data ke tabel database MySQL yang ditentukan. Pada contoh di atas, kami menambahkan data ke tabel Siswa

Di antara tanda kurung, nama kolom tabel menentukan di mana kita ingin menambahkan nilai (nama, nama belakang, email). Skrip akan menambahkan data dalam urutan yang ditentukan. Jika kita menulis (email, lastName, name), skrip akan menambahkan nilai dengan urutan yang salah

Bagian selanjutnya adalah pernyataan NILAI. Di sini, kami menentukan nilai di kolom yang dipilih sebelumnya. Contoh kita adalah name = Tom, lastName = Jackson, email = tom@jackson. tld

Selain itu, pengguna harus menyetel kueri SQL di antara tanda kutip. Dalam contoh kami, semua yang ditulis dalam tanda kutip setelah $sql = adalah kueri SQL

Sementara itu, baris 14-15 kode memeriksa apakah kueri berfungsi dan menampilkan pesan sukses

if (mysqli_query($conn, $sql)) {
     echo "New record created successfully";

Bagian terakhir, baris 16-18, menampilkan pesan berbeda jika kueri gagal. Ini menunjukkan pesan kesalahan SQL sebagai gantinya

} else {

echo "Error: " . $sql . "<br>" . mysqli_error($conn);

}

Memasukkan Data Menggunakan Metode PHP Data Object (PDO).

Untuk menggunakan metode ini, buat koneksi database terlebih dahulu dengan membuat objek PDO baru

Karena koneksi ke database MySQL adalah objek PDO, Anda harus menggunakan berbagai metode PDO untuk menyiapkan dan menjalankan kueri

Metode objek disebut seperti ini

$the_Object->the_Method();
_

PDO memungkinkan pengguna untuk menyiapkan, mengevaluasi, dan memperbaiki kode SQL sebelum mengeksekusi. Itu dapat mencegah orang jahat melakukan serangan injeksi SQL yang disederhanakan dengan mengetikkan kode SQL ke dalam formulir

// Pengguna menulis ini di bidang nama pengguna dari formulir login

john"; DROP DATABASE user_table;
// The final query becomes this
"SELECT * FROM user_table WHERE username = john"; DROP DATABASE user_table;

Sebagai kode SQL yang benar secara sintaksis, titik koma membuat DROP DATABASE user_table menjadi kueri SQL baru dan menghapus tabel pengguna. Untungnya, pernyataan yang disiapkan tidak mengizinkan “ dan ; . Dengan demikian, instruksi berbahaya untuk DROP DATABASE tidak akan berfungsi

Penting. Anda harus selalu menggunakan pernyataan yang telah disiapkan saat mengirim atau menerima data dari database dengan PDO

Untuk menggunakan pernyataan yang telah disiapkan, Anda harus menulis variabel baru yang memanggil metode persiapan() dari objek database. Hasilnya akan terlihat seperti ini

<?php
$servername = "localhost";
$database = "u123456789_mydatabase";
$username = "u123456789_myuser";
$password = "PasSw0rd123@";
$sql = "mysql:host=$servername;dbname=$database;";
$dsn_Options = [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION];
// Create a new connection to the MySQL database using PDO, $my_Db_Connection is an object
try {
 $my_Db_Connection = new PDO($sql, $username, $password, $dsn_Options);
 echo "Connected successfully";
} catch (PDOException $error) {
 echo 'Connection error: ' . $error->getMessage();
}
// Set the variables for the person we want to add to the database
$first_Name = "Tom";
$last_Name = "Jackson";
$email = "[email protected]";
// Here we create a variable that calls the prepare() method of the database object
// The SQL query you want to run is entered as the parameter, and placeholders are written like this :placeholder_name
$my_Insert_Statement = $my_Db_Connection->prepare("INSERT INTO Students (name, lastName, email) VALUES (:first_name, :last_name, :email)");
// Now we tell the script which variable each placeholder actually refers to using the bindParam() method
// First parameter is the placeholder in the statement above - the second parameter is a variable that it should refer to
$my_Insert_Statement->bindParam(":first_name", $first_Name);
$my_Insert_Statement->bindParam(":last_name", $last_Name);
$my_Insert_Statement->bindParam(":email", $email);
// Execute the query using the data we just defined
// The execute() method returns TRUE if it is successful and FALSE if it is not, allowing you to write your own messages here
if ($my_Insert_Statement->execute()) {
 echo "New record created successfully";
} else {
 echo "Unable to create record";
}
// At this point, you can change the data of the variables and execute again to add more data to the database
$first_Name = "John";
$last_Name = "Smith";
$email = "[email protected]";
 
// Execute again now that the variables have changed
if ($my_Insert_Statement->execute()) {
 echo "New record created successfully";
} else {
 echo "Unable to create record";
}
_

Pada baris 24-26, kita menggunakan metode bindParam() dari objek database. Ada juga metode bindValue() , yang bekerja secara berbeda

  • bindParam() – mengevaluasi data ketika metode execution() tercapai. Pertama kali skrip mencapai metode eksekusi(), ia melihat bahwa $first_Name sesuai dengan "Tom", mengikat nilai itu, dan menjalankan kueri. Saat skrip mencapai metode eksekusi() kedua, ia melihat bahwa $first_Name sekarang sesuai dengan “John”, mengikat nilai tersebut, dan menjalankan ulang kueri dengan nilai baru. Perhatikan bahwa kami mendefinisikan kueri satu kali dan menggunakannya kembali dengan data berbeda di titik berbeda dalam skrip
  • bindValue() – mengevaluasi data segera setelah bindValue() tercapai. Karena nilai $first_Name disetel ke “Tom” saat bindValue() tercapai, nilai ini akan digunakan setiap kali metode execution() dipanggil untuk $my_Insert_Statement

Perhatikan bahwa kita menggunakan kembali variabel $first_Name dan memberinya nilai baru untuk kedua kalinya. Jika Anda memeriksa database Anda setelah menjalankan skrip ini, Anda memiliki kedua nama yang ditentukan, meskipun variabel $first_Name sama dengan "John" di akhir skrip

Metode bindParam menerima parameter berdasarkan referensi, bukan berdasarkan nilai. Pengguna hanya perlu memanggil bindParam satu kali, dan skrip akan memasukkan nilai yang diperbarui ke dalam database

Anda dapat membaca lebih lanjut tentang melewatkan parameter di manual PHP

Mengonfirmasi Keberhasilan

Jika kueri yang kami jalankan dan INSERT ke dalam database MySQL berhasil, kami akan melihat pesan berikut

Connected Successfully
_
New record created successfully

Pemecahan Masalah Kesalahan Umum

Kadang-kadang, catatan baru akan menampilkan kesalahan dengan penyisipan SQL. Untungnya, ada cara untuk memperbaiki kesalahan MySQL ini

MySQLi

Jika pesan kesalahan MySQLi muncul, kami dapat mencoba berbagai perbaikan

Misalnya, jika kami memiliki satu kesalahan sintaksis dalam kode kami, kami akan melihat kesalahan berikut

Connect successfully

Error: INSERT INTO students {name, lastName, email} VALUES ('Tom', 'Jackson', '[email protected]')

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '{name, lastName, email} VALUES ('Tom', 'Jackson', '[email protected]')' at line 1"
_

Seperti yang Anda lihat, bagian pertama dari kode itu bagus dan skrip berhasil membuat koneksi. Namun, kueri SQL gagal

$sql = "INSERT INTO Students (name, lastName, email) VALUES ('Tom', 'Jackson', '[email protected]')";
_0

Ini karena kesalahan sintaks menyebabkan skrip gagal. Kesalahannya ada di sini

$sql = "INSERT INTO Students (name, lastName, email) VALUES ('Tom', 'Jackson', '[email protected]')";
_1

Kami salah menggunakan tanda kurung kurawal alih-alih tanda kurung sederhana, menyebabkan skrip melontarkan kesalahan sintaksis

PDO

Untuk menerima pesan kesalahan untuk pemecahan masalah, pengguna harus menyetel mode kesalahan untuk menampilkan semua pengecualian. Itulah yang tertulis di baris 12 dari koneksi PDO. Karena semua pengecualian diaktifkan, masalah khusus apa pun akan ditampilkan

Pengguna hanya boleh menggunakan semua pengecualian saat mengembangkan skrip. Itu dapat mengekspos database dan nama tabel, yang harus disembunyikan pengguna dari pihak jahat

Dalam kasus di atas, di mana kurung kurawal digunakan sebagai pengganti tanda kurung, kesalahannya terlihat seperti ini

$sql = "INSERT INTO Students (name, lastName, email) VALUES ('Tom', 'Jackson', '[email protected]')";
_2

Masalah Potensial Lainnya

  • Menentukan kolom yang salah seperti kolom yang tidak ada atau kesalahan ejaan
  • Satu jenis nilai ditugaskan ke jenis kolom lain. Misalnya, jika kami mencoba menetapkan angka 47 ke kolom Nama, kami akan mendapatkan kesalahan karena seharusnya berupa nilai string. Tetapi jika kita menetapkan nomor di antara tanda kutip, misalnya "47", itu akan berhasil karena nomor kita akan menjadi string ke kolom
  • Mengakses basis data MySQL jarak jauh tanpa pengaturan MySQL jarak jauh

Semua kesalahan itu dapat dengan mudah diperbaiki dengan mengikuti pedoman pesan kesalahan atau memeriksa log kesalahan

Pastikan situs web Anda dapat menangani semuanya – mulai dari lalu lintas tinggi hingga waktu pemuatan yang cepat, dan banyak lagi. Beli Hosting Web

Kesimpulan

Bahasa pemrograman PHP memungkinkan pengguna untuk dengan mudah menambahkan data database MySQL baru dengan beberapa baris kode

Dalam tutorial ini, kami telah menunjukkan cara menggunakan PHP untuk memasukkan data ke dalam database MySQL Anda menggunakan MySQLi dan PDO. Kami juga telah menunjukkan cara memecahkan masalah kesalahan koneksi umum

Kami harap tutorial ini bermanfaat bagi Anda. Jika Anda memiliki pertanyaan, beri tahu kami di komentar di bawah

Pelajari Lebih Lanjut Tentang PHP

Cara Install phpBB di Website Anda
Cara (Aman) Membuat Pengalihan PHP
11 Framework PHP Terbaik
Cara Membuat File phpinfo
PHP 8. 1. Fitur Baru dan Penghentian
Cara Memodifikasi Ukuran Upload Maks PHP

Penulis

Domantas G

Domantas memimpin tim konten dan SEO ke depan dengan ide-ide segar dan pendekatan out of the box. Berbekal pengetahuan SEO dan pemasaran yang luas, dia bertujuan untuk menyebarkan berita tentang Hostinger ke seluruh penjuru dunia. Selama waktu luangnya, Domantas suka mengasah keterampilan pengembangan web dan bepergian ke tempat-tempat eksotis

Lainnya dari Domantas G

Cara mengambil tambah dan ubah data menggunakan ekstensi php mysqli

Co-penulis

Ignas R

Ignas sangat puas membantu orang mengatasi masalah teknis yang paling rumit sekalipun. Tujuannya saat ini adalah menulis artikel yang mudah diikuti sehingga masalah ini tidak akan terjadi sama sekali. Di waktu luangnya, Ignas suka bermain video game dan membereskan barang-barang di sekitar rumahnya

Bagaimana Anda mengambil data dari database di PHP menggunakan MySQLi?

Menghubungkan ke Database. .
MySQLi Berorientasi Objek $conn = new mysqli($servername, $username, $databasename)
Prosedural MySQLi $conn = mysqli_connect($servername, $username, $password, $databasename);
PDO. $conn = new PDO("mysql. host=$servername;dbname=myDB", $username, $password, $databasename);

Bagaimana cara memperbarui data dalam PHP menggunakan formulir MySQLi?

Perbarui Data Dalam Tabel MySQL Menggunakan MySQLi dan PDO. Perhatikan klausa WHERE dalam sintaks UPDATE . Klausa WHERE menentukan catatan atau catatan mana yang harus diperbarui. Jika Anda menghilangkan klausa WHERE, semua rekaman akan diperbarui. Untuk mempelajari lebih lanjut tentang SQL, silakan kunjungi tutorial SQL kami.

Bagaimana cara mengedit dan memperbarui data di PHP?

Source Code: SELECTING and Displaying Data
Name:

List of companies .

< ? php while( $row = mysql_fetch_array($res) ) echo "$row[id]. $row[name]