> For the complete documentation index, see [llms.txt](https://learn.devlabss.my.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.devlabss.my.id/php/bab-8-php-and-mysql-pdo/8.3-menambah-data-create.md).

# 8.3 Menambah Data (Create)

Operasi `create` dipakai saat aplikasi perlu menambahkan data baru.

Materi ini menekankan alur input, query insert, dan penggunaan parameter yang aman.

### Tujuan belajar

Setelah mempelajari bagian ini, Anda diharapkan bisa:

* memahami fungsi operasi `create`
* menambahkan data ke database dengan query `INSERT`
* memakai prepared statement untuk input yang lebih aman

### Apa itu operasi `create`

`Create` berarti menambah data baru ke database.

Contohnya:

* menambah siswa baru
* menambah akun baru
* menambah produk baru

### Contoh query `INSERT`

```php
<?php
$sql = "INSERT INTO siswa (nama, kelas, jurusan) VALUES (?, ?, ?)";
$stmt = $pdo->prepare($sql);
$stmt->execute(["Rina", "XI RPL 1", "RPL"]);
?>
```

### Kenapa memakai `prepare()`

Prepared statement membantu memisahkan query dan data input.

Ini membuat penulisan lebih aman dibanding menempelkan input langsung ke query.

### Contoh alur sederhana

```php
<?php
$nama = "Rina";
$kelas = "XI RPL 1";
$jurusan = "RPL";

$sql = "INSERT INTO siswa (nama, kelas, jurusan) VALUES (?, ?, ?)";
$stmt = $pdo->prepare($sql);
$stmt->execute([$nama, $kelas, $jurusan]);

echo "Data berhasil ditambahkan";
?>
```

### Hal yang perlu diingat

Sebelum data disimpan:

* pastikan input sudah ditangkap
* pastikan input sudah dibersihkan
* pastikan input sudah divalidasi

Jangan langsung memasukkan data mentah ke database.

### Kapan `create` dipakai

Gunakan operasi ini saat:

* ada form penambahan data
* pengguna membuat entri baru
* sistem menyimpan hasil input pertama kali

### Kesalahan umum

* jumlah nilai tidak sesuai jumlah kolom
* nama kolom salah
* input langsung ditempel ke query
* lupa mengecek apakah eksekusi berhasil

### Latihan singkat

Buat contoh penambahan data untuk tabel siswa yang berisi:

* nama
* kelas
* jurusan

Lalu tampilkan pesan jika data berhasil disimpan.

### Poin evaluasi bab 8.3.

Pastikan Anda sudah memahami poin berikut:

* Saya paham fungsi operasi `create`.
* Saya bisa membaca query `INSERT`.
* Saya tahu kenapa `prepare()` penting.
* Saya paham data input harus dibersihkan dan divalidasi dulu.

Jika semua sudah jelas, lanjut ke [8.4 Mengubah Data (Update)](/php/bab-8-php-and-mysql-pdo/8.4-mengubah-data-update.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.devlabss.my.id/php/bab-8-php-and-mysql-pdo/8.3-menambah-data-create.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
