Jumat, 12 Desember 2014

my

// KONEKSI DENGAN OOP
define('HOST', 'localhost'); // Host database
define('USER', 'root'); // Username database
define('PASSWORD', ''); // Password database
define('DATABASE', 'belajar'); // Nama database

$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE); // Melakukan koneksi ke database berdasarkan konfigurasi diatas

if($mysqli -> connect_error){
    trigger_error('Koneksi ke database gagal: ' . $mysqli -> connect_error, E_USER_ERROR); // Jika koneksi gagal, tampilkan pesan 'Koneksi ke database gagal'  
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// KONEKSI DENGAN PROSEDURAL

define('HOST', 'localhost'); // Host database
define('USER', 'root'); // Username database
define('PASSWORD', ''); // Password database
define('DATABASE', 'belajar'); // Nama database

$db_conx = mysqli_connect(HOST, USER, PASSWORD, DATABASE);

if (mysqli_connect_errno()) {
  trigger_error('Koneksi ke database gagal: '  . mysqli_connect_error(), E_USER_ERROR); // Jika koneksi gagal, tampilkan pesan 'Koneksi ke database gagal'
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//SELECT DATA DENGAN OOP

$sql= "SELECT judul, pengarang FROM buku ORDER BY judul ASC"; // Menampung perintah SQL ke variabel ‘sql’
$hasil = $mysqli->query($sql); // Menjalankan perintah tersebut dengan fungsi mysqli-query

if($hasil === false) { // Jika gagal menjalankan query
    trigger_error(‘Perintah SQL salah: ‘ . $sql . ‘ Error: ‘ . $mysqli->error, E_USER_ERROR); // Tampilkan pesan
} else { // Jika berhasil
    echo 'Ditemukan Data : ' . $hasil-> num_rows;      //Tampilkan jumlah Rows
    while($data = $hasil->fetch_array()){             // Tampilkan data dengan pengulangan while
        echo "<tr>";
        echo "<td>$data[judul]</td>";                 // Menampilkan data judul
        echo "<td>$data[pengarang]</td>";             // Menampilkan data pengarang
        echo "</tr>";
    }
    $hasil->close();                                  //Tutup Recordset
}
$mysqli->close();                                    //Tutup Koneksi

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// INSERT DENGAN OOP
if($_SERVER['REQUEST_METHOD'] == 'POST'){
    if(isset($_POST['judul']) and isset($_POST['pengarang'])){ // Memeriksa apakah inputan judul dan pengarang ada atau tidak
        $judul = $_POST['judul']; // membuat variabel judul untuk menampung data inputan judul
        $pengarang = $_POST['pengarang']; // membuat variabel pengarang untuk menampung data inputan pengarang
 
        if(!empty($judul) and (!empty($pengarang))){ // Memeriksa apakah variabel judul dan pengarang sudah terisi,jika sudah jalankan query dibawah
            $sql="INSERT INTO buku (judul, pengarang) VALUES ('$judul','$pengarang')";
             
            if($mysqli->query($sql) === false) { // Jika gagal meng-insert data tampilkan pesan dibawah 'Perintah SQL Salah'
              trigger_error('Perintah SQL Salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR);
            } else { // Jika berhasil alihkan ke halaman tampil.php
              header('location: tampil.php');
            }
        }
    }
}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// MULTI QUERY
// setiap query SQL kita pisahkan dengan semi-colon atawa titik koma
$queries  = "SELECT gmd FROM tabel_gmd;";

$queries .= "SELECT nama FROM tabel_dicarve;";
$queries .= "SELECT judul FROM tabel_biblio";

// gunakan metode 'multi_query'
// untuk meng-execute string query SQL multiple secara simultan
$multi_query_obj = $mysqli_obj->multi_query($queries);

/* execute multi query */
if ($multi_query_obj) {
    // loop masing-masing result-nya
    while (true) {
        // ambil result set multiple query dengan metode 'store_result'
        if ($result = $mysqli_obj->store_result()) {
            while ($row = $result->fetch_row()) {
                echo $row[0]."<br />\n";
            }
            // bebasin memory resultset
            $result->close();
        }       
        // apakah masih ada resultset lagi?
        // kalau udah abis kita stop loop-nya
        if (!$mysqli_obj->more_results()) {
            break;
        } else {
            // kita buat pemisah antar resultset dengan garis horizontal HTML <hr>
            echo "<hr>\n";
        }
    }
}
/* tutup koneksi ke server */
$mysqli_obj->close();

Mengecek Apakah sebuah extension terinstall atau tidak

Untuk mengecek apakah sebuah extension PHP terinstall atau tidak, bisa menggunakan perintah berikut

if (!extension_loaded('mysqli')) {
    echo 'Extension MySQLI belum terinstall dengan benar. check php.ini';
    exit();
}
 
Thanks To : Dicarve (http://dicarve.blogspot.com)

Rabu, 10 Desember 2014

HowTo: Migrate a database dump from SQLite to MySQL

Grab the (sqlite) sql dump an fire up your editor:
sqlite3 db/development.sqlite .dump .quit > dump.sql
You have to make these replacements:
  • replace all double-quotes (") with grave accents (´) (in vim just type :%s/"/´/)
  • replace "autoincrement" with "auto_increment"
  • remove "BEGIN TRANSACTION;" from the beginnig of the dump
  • remove "COMMIT;" from the end of the dump
  • remove all lines containing "sqlite_sequence"
Now you can simply import your new MySQL dump.