BELAJAR PHP

untuk pemula sekali

BELAJAR PHP 4-8.daftar semua data

nah,mulai sekarang kita akan coba menggunakan apa yang telah kita pelajari sebelumnya untuk php programing.

ambil data semua dari database pakai php programing,
dan menyatakan data itu seperti daftar.

anda ingin hasil nya seperti ini

kita akan membuat daftar data semua untuk bisa kita lihat.
hasil nya seperti ini.
setelah kita melihat ini, kita mulai membuat ya.

membuat file baru

pertama membuat file "daftar.php" untuk memulainya.

silahkan anda copy "proformas.html" dan ganti nama itu ke "daftar.php".
extension juga harus ganti dari ".html" ke ".php". dan minta tolong anda hati-hati.

setelah itu, silahkan anda buka file itu dan mengisi seperti script dibawah.

<body>

<?php
$dsn = 'mysql:dbname=angket_db;host=localhost';
$user = 'root';
$password = '';
$dbh = new PDO ($dsn,$user,$password);
$dbh -> query('SET NAMES UTF-8');

$sql = 'SELECT * FROM angket_table';
$stmt = $dbh -> prepare($sql);
$stmt->execute();

$dbh=null;
?>

</body>
anda sudah melihat script ini di 4-6 untuk perbaiki "thanks.php".

arah yang seharusnya...
1.pertama penyambungan ke database
2.instruksi ke database
3.amputasi dari database

instruksi nya "SELECT * FROM angket_table".
arti nya "silahkan and berikan data semua ke saya".

setelah mengisi ini, coba melihat di browser.
hasil nya bagaimana? kosong?

ya, benar. karena belum ada script php "echo", jadi pengungkapan nya belum ada.

dimana data yang sudah ambil dari database?

kita sudah pakai kalimat "SELECT".
jadi pasti sudah ada data.
tapi dimana?

jawab nya "$stmt" ya.
ada semua data ada dalam variable "$stmt".

bagaimana cara ambil data dari "$stmt"?

hasil ambil data nya sudah ada di $stmt. itu anda sudah mengerti.
selanjutnya cara ambil data dari $stmt.

minta tolong tambah script seperti bawah.

$stmt->execute();

$res = $stmt->fetch(PDO::FETCH_ASSOC);

echo $res['code'];
echo $res['nama'];
echo $res['email'];
echo $res['opini'];

$dbh=null;
script "fetch" ini, untuk ambil data satu-satu dari $stmt.
sekarang pakai fetch satu kali, jadi hasil nya row ke 1 saja.
jadi, coba tambah script php seperti dikembawah.
satu kali lagi dari $res sampai echo $res['opini'].
$stmt->execute();

$res = $stmt->fetch(PDO::FETCH_ASSOC);

echo $res['code'];
echo $res['nama'];
echo $res['email'];
echo $res['opini'];

$res = $stmt->fetch(PDO::FETCH_ASSOC);

echo $res['code'];
echo $res['nama'];
echo $res['email'];
echo $res['opini'];

$dbh=null;
setelah itu, coba lihat kembali hasilnya.
ada row ke 1 dan row ke 2 ya.

script php "while"

kalau kita tambah script php dari $res sampai echo $res['opini'] lagi, kita bisa melihat row ke 3.
kalau tambah lagi, bisa lihat row ke 4...
tapi kalau cara ini, pasti lucu ya.

ada cara "loop". kalau bahasa indonesia "bertubi-tubi".
untuk ini pakai script php "while".

(tidak boleh berjalan scriptdi bawah)

while(1){
echo 'A';
echo 'B';
echo 'C';
}
hasil script ini, ada pengungkapan "ABCABCABCABC....".
arti nya bertubi-tubi "ABC".

tapi sampai kapan?
arti "while(1)" adalah "keabadian".
jadi pasti tidak selesai.
kalau anda berjalan script ini, computer anda pasti henk...

jadi kita harus pasang script untuk berhenti.
untuk itu pakai "break".
if($res==false){
break;
}
arti ini, kalau "$res" nya sudah habis,silahkan anda keluar dari loop.

tambah script "while" ke "daftar.php"

perbaiki dan tambah script di "aftar.php" seperti dibawah.

$stmt->execute();

while(1){
$res = $stmt->fetch(PDO::FETCH_ASSOC);
if($res==false){
break;
}
echo $res['code'];
echo '<br>';
echo $res['nama'];
echo '<br>';
echo $res['email'];
echo '<br>';
echo $res['opini'];
echo '<br>';
echo '<br>';
}


$dbh=null;
anda pasti mengerti arti ini?
susunan ini sangat penting. jadi minta tolong sekali anda melihat satu-satu.

1.setelah ambil data dari database
2.pakai "while" untuk bertubi-tubi
3.masukkan data ke $res (data yang satu row saja) pakai "fetch"
4.kalau $res sudah habis, keluar dari loop
5.menyatakan data code, nama, email, opini (pakai <br> untuk gampang melihat)

kalau sudah mengerti, silahkan anda konfirmasi di browser.
kalau hasil nya seperti dibawah, sudah OK.
artinya anda sudah bisa ambil data dan menyatakan data itu.
selanjutnya kita akan membuat fungsi pencarian data ya.