Pernyataan Terkompilasi
Amankan kueri basis data Anda dengan pernyataan terkompilasi
Pernyataan Terkompilasi adalah pelajaran PHP Academy gratis di CoddyKit. Ini adalah pelajaran 5 dari 6. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar PHP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus PHP Academy mencakup 6 pelajaran total.
Ikhtisar Pernyataan Terparameterisasi
Pernyataan Terparameterisasi
Selamat datang di pelajaran berikutnya! Dalam pelajaran ini, Anda akan mempelajari pernyataan terparameterisasi dan cara pernyataan tersebut membuat interaksi Anda dengan basis data menjadi aman dan efisien. Mari kita mulai!

Apa Itu Pernyataan Terparameterisasi?
Pernyataan terparameterisasi adalah fitur sistem manajemen basis data yang memungkinkan Anda menjalankan kueri SQL dengan aman dan efisien. Pernyataan ini memisahkan kode SQL dari data sehingga mencegah serangan injeksi SQL.
Contoh: Menggunakan penanda tempat (:name, :email) alih-alih menyisipkan masukan pengguna secara langsung ke dalam kueri.
Mengapa Menggunakan Pernyataan Terparameterisasi?
Pernyataan terparameterisasi memberikan beberapa manfaat:
- Keamanan: Mencegah injeksi SQL dengan meloloskan karakter khusus dalam masukan pengguna.
- Efisiensi: Menggunakan kembali pernyataan yang sama dengan data berbeda sehingga mengurangi waktu penguraian kueri.
- Kemudahan Pemeliharaan: Membuat kode lebih mudah dibaca dan ditelusuri kesalahannya.
Poin Penting: Selalu gunakan pernyataan terparameterisasi saat berinteraksi dengan data yang diberikan pengguna.
Membuat Pernyataan Terparameterisasi
Untuk membuat pernyataan terparameterisasi, ikuti langkah-langkah berikut:
- Tulis kueri SQL dengan penanda tempat.
- Siapkan kueri menggunakan koneksi basis data.
- Ikat nilai ke penanda tempat.
- Jalankan pernyataan tersebut.
Contoh:
Tips: Gunakan larik asosiatif untuk mengikat nilai dengan mudah.
<?php
$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";
$stmt = $pdo->prepare($sql);
$stmt->execute(["name" => "Alice", "email" => "alice@mail.com"]);
?>Mengikat Nilai
Gunakan metode bindParam() atau bindValue() untuk mengikat nilai ke penanda tempat. Contoh:
<?php
$stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (:name, :email)");
$stmt->bindParam(":name", $name);
$stmt->bindParam(":email", $email);
$name = "Bob";
$email = "bob@mail.com";
$stmt->execute();
?>
Menggunakan Pernyataan Terparameterisasi untuk Kueri SELECT
Pernyataan terparameterisasi dapat digunakan dengan semua jenis kueri SQL, termasuk SELECT. Contoh:
Tips: Gunakan fetchAll() untuk mengambil beberapa baris.
<?php
$sql = "SELECT * FROM users WHERE name = :name";
$stmt = $pdo->prepare($sql);
$stmt->execute(["name" => "Alice"]);
$result = $stmt->fetch(PDO::FETCH_ASSOC);
echo "Name: " . $result["name"] . ", Email: " . $result["email"];
?>
Menggunakan Kembali Pernyataan Terparameterisasi
Pernyataan terparameterisasi dapat digunakan kembali dengan nilai yang berbeda sehingga meningkatkan efisiensi. Contoh:
<?php
$stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (:name, :email)");
$users = [
["name" => "Charlie", "email" => "charlie@mail.com"],
["name" => "Dave", "email" => "dave@mail.com"]
];
foreach ($users as $user) {
$stmt->execute($user);
}
echo "Multiple records inserted successfully!";
?>
Mencegah Injeksi SQL
Pernyataan terparameterisasi menangani karakter khusus dalam masukan pengguna sehingga mencegah serangan injeksi SQL. Contoh:
<?php
$sql = "SELECT * FROM users WHERE email = :email";
$stmt = $pdo->prepare($sql);
$stmt->execute(["email" => "' OR 1=1; --"]);
$result = $stmt->fetch();
if ($result) {
echo "User found.";
} else {
echo "No user found.";
}
?>
Kerja Bagus!
Selamat! Anda telah mempelajari cara menggunakan pernyataan terparameterisasi dalam PHP untuk mengamankan interaksi dengan basis data. Dalam pelajaran berikutnya, kita akan mempelajari teknik kueri tingkat lanjut dengan penggabungan dan agregasi. Mari terus menulis kode!

Belajar PHP dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 49
- Pelajaran
- 195
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pernyataan Terkompilasi” gratis?
Ya — teks lengkap “Pernyataan Terkompilasi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus PHP Academy, upgrade ke CoddyKit PRO. Kursus PHP Academy mencakup 6 pelajaran total.
Apa yang akan aku pelajari di “Pernyataan Terkompilasi”?
Amankan kueri basis data Anda dengan pernyataan terkompilasi Kamu berlatih PHP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai PHP Academy?
Tidak diperlukan pengalaman sebelumnya. PHP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 5 dari 6.
Berapa lama pelajaran “Pernyataan Terkompilasi” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran PHP Academy ini?
Ya. Setiap pelajaran PHP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Pengantar Basis Data
- Menghubungkan ke Basis Data MySQL
- Mengelola Tabel
- Melakukan Operasi CRUD
- Pernyataan Terkompilasi
- Bekerja dengan PDO