Latest web development tutorials
×

PHP kuliah

PHP kuliah PHP pengantar singkat PHP memasang PHP tatabahasa PHP variabel PHP echo/print PHP Jenis Data PHP konstan PHP tali PHP operator PHP If...Else PHP Switch PHP susunan PHP Sorting array PHP superglobals PHP While sirkulasi PHP For sirkulasi PHP fungsi PHP Variabel sihir PHP Ruang nama PHP Berorientasi Objek

PHP bentuk

PHP bentuk PHP bentuk Authentication PHP bentuk - bidang yang harus diisi PHP bentuk - email verifikasi dan URL PHP contoh bentuk lengkap PHP $_GET variabel PHP $_POST variabel

PHP canggih Tutorial

PHP Array multidimensi PHP tanggal PHP berisi PHP berkas PHP Upload File PHP Cookie PHP Session PHP E-mail PHP keamanan E-mail PHP Error PHP Exception PHP filter PHP filter lanjutan PHP JSON

PHP 7 Fitur baru

PHP 7 Fitur baru

PHP database

PHP MySQL pengantar singkat PHP MySQL koneksi PHP MySQL Membuat database PHP MySQL Buat tabel data PHP MySQL memasukkan data PHP MySQL Menyisipkan beberapa data yang PHP MySQL Laporan disiapkan PHP MySQL membaca data PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX pengantar singkat AJAX PHP AJAX database AJAX XML AJAX pencarian real-time AJAX RSS Reader AJAX suara

PHP Reference manual

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP image Processing PHP RESTful

PHP MySQL memasukkan beberapa data yang

Gunakan MySQLi dan PDO MySQL untuk memasukkan beberapa data yang

mysqli_multi_query () adalah fungsi yang digunakan untuk mengeksekusi beberapa pernyataan SQL.

Contoh berikut ini untuk "MyGuests" meja menambahkan tiga rekor baru:

Contoh (MySQLi - Object Oriented)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "password";
$ Dbname = "myDB";

// Membuat Link
$ Conn = baru mysqli ($ servername, $ username, $ password, $ dbname);
// Periksa Links
if ($ conn-> connect_error) {
die ( "Koneksi gagal:" $ conn-> connect_error.);
}

$ Sql ​​= "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'John', 'Doe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Mary', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

if ($ conn-> multi_query ($ sql) === TRUE) {
echo "Rekor baru dimasukkan berhasil";
} Lain {
. Echo "Kesalahan:" $ sql "Situs" $ conn-> kesalahan; ..
}

$ Conn-> close ();
?>

catatan Perhatikan bahwa setiap pernyataan SQL harus dipisahkan oleh titik koma.

Contoh (MySQLi - berorientasi proses)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "password";
$ Dbname = "myDB";

// Membuat Link
$ Conn = mysqli_connect ($ servername, $ username, $ password, $ dbname);
// Periksa Links
if (! $ conn) {
die ( "Koneksi gagal:" mysqli_connect_error ().);
}

$ Sql ​​= "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'John', 'Doe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Mary', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

jika (mysqli_multi_query ($ conn, $ sql)) {
echo "Rekor baru dimasukkan berhasil";
} Lain {
. Echo "Kesalahan:" $ sql "Situs" mysqli_error ($ conn); ..
}

mysqli_close ($ conn);
?>


Contoh (PDO)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "password";
$ Dbname = "myDBPDO";

try {
$ Conn = baru PDO ( "mysql: host = $ servername; dbname = $ dbname", $ username, $ password);
// Mengatur mode error PDO pengecualian
$ Conn-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);

// Mulai transaksi
$ Conn-> beginTransaction ();
// Pernyataan SQL
$ Conn-> exec ( "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'John', 'Doe', '[email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Mary', 'Moe', '[email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (nama depan, nama belakang, email)
VALUES ( 'Julie', 'Dooley', '[email protected]') ");

// Komit transaksi
$ Conn-> commit ();
echo "Rekor baru dimasukkan berhasil";
}
catch (PDOException $ e)
{
// Jika rollback gagal
$ Conn-> rollback ();
.. Echo $ sql "Situs" $ e> getMessage ();
}

$ Conn = null;
?>



Gunakan pernyataan siap

ekstensi mysqli menyediakan cara kedua untuk memasukkan laporan.

Kami menyiapkan laporan dan parameter terikat.

ekstensi mysql dapat mengirimkan data tanpa pernyataan atau permintaan ke database mysql. Anda dapat mengaitkan atau "mengikat" variabel untuk kolom.

Contoh (MySQLi menggunakan pernyataan siap)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "password";
$ Dbname = "myDB";

// Buat koneksi
$ Conn = baru mysqli ($ servername, $ username, $ password, $ dbname);
// Koneksi Uji
if ($ conn-> connect_error) {
die ( "Koneksi gagal:" $ conn-> connect_error.);
} Lain {
$ Sql ​​= "INSERT INTO MyGuests NILAI (,, ???)";

// Untuk mysqli_stmt_prepare () obyek pernyataan inisialisasi
$ Stmt = mysqli_stmt_init ($ conn);

// Pernyataan Siap
jika (mysqli_stmt_prepare ($ stmt, $ sql)) {
// Parameter Bind
mysqli_stmt_bind_param ($ stmt, 'sss', $ firstname, lastname $, $ email);

// Set parameter dan melakukan
$ Nama depan = 'John';
$ Namabelakang = 'Doe';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Nama depan = 'Mary';
$ Namabelakang = 'Moe';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Nama depan = 'Julie';
$ Namabelakang = 'Dooley';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);
}
}
?>

Kita bisa melihat pada contoh di atas menggunakan modular untuk menangani masalah ini. Kita bisa membuat blok kode untuk membaca lebih mudah dan manajemen.

Catatan parameter terikat. Mari kita lihat mysqli_stmt_bind_param () code:

mysqli_stmt_bind_param($stmt, 'sss', $firstname, $lastname, $email);

Argumen Binding untuk query dan melewatkan parameter ke database. Parameter kedua adalah "sss". Daftar berikut menunjukkan jenis parameter. s karakter memberitahu argumen mysql adalah sebuah string.

Mungkin empat parameter berikut:

  • i - bilangan bulat
  • d - double-presisi angka floating-point
  • s - string
  • b - nilai boolean

Setiap jenis parameter harus ditentukan untuk memastikan keamanan data. Berdasarkan jenis penghakiman dapat mengurangi risiko kerentanan injeksi SQL.