Sebelum menggunakan SQLite, jika menggunakan localhost, maka tentunya harus ada konfigurasi Apache dalam XAMPP, antara lain:
Ubah dan uncomment atau hilangkan tanda komentar pada file php.ini dalam folder php/php.ini:
...
extension=php_pdo_sqlite.dll
...
extension=php_sqlite3.dll
...
[sqlite3]
sqlite3.extension_dir =
...
Setelah itu restart Apache dengan cara Stop dan Start kembali. Jika hal ini tidak digunakan, maka saat load class SQLite akan terdapat tampilan berikut:
Fatal error: Class 'SQLite3' not found in F:\xampp\htdocs\sqlite\open-sqlite3.php on line 3
Berikut adalah cara membuat dan mengakses sebuah database SQLite3 di PHP:
<?php
$db = new SQLite3('local.db');
if(!$db) {
echo $db->lastErrorMsg();
} else {
echo "Open database success...\n";
}
echo realpath("local.db");
echo "<br/><br/>";
// CARA 1
$q = $db->query('SELECT *, COUNT(*) as count FROM face_info');
while ($r = $q->fetchArray()) {
//var_dump($r);
$baris_kedua[] = $r;
}
// Gunakan count untuk mengetahui num_rows atau jumlah baris
echo '<br/><br/>Jumlah baris tabel face_info adalah '.$q->fetchArray()[7].' atau '.$baris_kedua[0]['count'].'<br/>';
// CARA 2
$sql =<<<EOF
SELECT * FROM face_info;
EOF;
$query = $db->query($sql);
if(!$query){
echo $db->lastErrorMsg();
} else {
while ($row = $query->fetchArray()) {
//print_r($row);
$line_row[] = $row;
}
}
// Menampilkan satu data ID
echo '<br/><br/>Selanjutnya CARA 2, ID kedua adalah '.$line_row[1]['dwFaceId'].'<br/>';
// CARA 3, hanya mengambil satu baris data (single)
$sql1 =<<<EOF
SELECT * FROM face_info WHERE dwFaceId="1";
EOF;
$query1 = $db->querySingle($sql1, true);
if(!$query1){
echo $db->lastErrorMsg(); // Jaga-jaga kalau tidak ada data
} else {
//print_r($query1);
// Menampilkan satu data ID
echo '<br/><br/>Selanjutnya CARA 3, ID pertama adalah '.$query1['dwFaceId'].'<br/>';
}
// Contoh mengambil gambar tipe blob dari data CARA 1
echo '<br/>CARA 1<br/><img src="data:image/png;base64,' . base64_encode( $baris_kedua[0]['FaceMB'] ) . '" width="100"/>';
// Contoh mengambil gambar tipe blob dari data CARA 3
echo '<br/>CARA 3<br/><img src="data:image/png;base64,' . base64_encode( $query1['FaceMB'] ) . '" width="100"/><br/>';
// Contoh simpan gambar ke dalam folder
echo "<br/><br/>Contoh simpan gambar ke dalam folder<br/>";
$path = "./images/";
// option 1
$file = fopen($path.$baris_kedua[0][1].".jpeg","w") or die("Unable to open file!");
echo "File name: ".$path.$baris_kedua[0][1].".jpeg";
fwrite($file, base64_decode($baris_kedua[0]['FaceMB']));
fclose($file);
// option 2 (sederhana)
// file_put_contents($path."/".$name, base64_decode($image));
?>
Jika menggunakan XAMPP, maka pastikan file .db masih dalam satu folder yang sama di htdocs. Apabila dijalankan pada browser dengan akses localhost, maka terlihat keterangan berikut:
Open database success...
Maka silahkan gunakan kode SQL seperti biasa untuk mengakses file local.db secara CRUD. Jika ingin mengaksesnya layaknya phpmyadmin silahkan gunakan DB Browser for SQLite. Contact us kalau ingin contoh file local.db
No comments:
Post a Comment