• Koneksi Database dengan PEAR PHP DB

    Nah, waktu itu kita sudah ulas mengenai apa itu DSN (Data Source Name), sekarang Cheyuz bakal ngajarin gimana cara koneksi ke Database melalui PEAR PHP Framework kita… yang akan kita pake saat ini adalah menggunakan PEAR::DB, yaitu PEAR yang menggunakan Class DB.php sebagai pemanipulasi databasenya…
    Nah untuk koneksi database itu sendiri dibutuhkan DSN dengan format yang Valid sebagai parameter pertama… Jika menggunakan Array, kita bisa juga membuat DSN dengan cara berikut:

    $dsn = array(
        'phptype'  => 'mysql',
        'username' => 'username_kamu',
        'password' => 'password_kamu',
        'hostspec' => 'localhost',
        'database' => 'cheyuz_db',
    );

    Untuk koneksinya kita gunakan fungsi connect() yang terdapat di objek DB…
    Kemudian kita dapat menggunakan fungsi setOption() untuk mengatur “runtime configuration”-nya, misalnya:

    $options = array(
        'debug'       => 2,
        'portability' => DB_PORTABILITY_ALL,
    );

    Ada banyak options yang bisa diatur, nanti kita bahas di postingan berikutnya…
    truz ada yang namanya fungsi isError(), buat apa sih??? isError() itu fungsinya adalah buat ngecek apakah koneksi database error ato nggak… jika error maka bernilai true, jika tidak maka bernilai false… ini sangat penting untuk menghandle error yang tidak kita inginkan…
    Untuk menutup koneksi database, kita dapat menggunakan fungsi disconnect()

    OKE, langsung aja ke praktek!
    oia perlu diperhatikan di sini Cheyuz hanya fokus ke database mysql, bukan yang lain, meskipun ada pembahasan sedikit mengenai koneksi ke Postgre SQL, ya sebenernya sama aja, cuman beda jenis aja, hehehe…
    OK misalnya di sini username yang digunakan adalah cheyuz, password: kukuruyuk, dan nama database cheyuz_db, dan hostingan adalah lokal.
    Koneksi database menggunakan mysql

     <?php
    //paling penting, import class "DB.php"
    require_once 'DB.php';
     
    //set DSN
    $dsn = 'mysql://cheyuz:kukuruyuk@localhost/cheyuz_db';
    $options = array(
        'debug'       => 2,
        'portability' => DB_PORTABILITY_ALL,
    );
     
    //koneksi dengan DSN dan Option yang udah kita set
    $db = DB::connect($dsn, $options); 
     
    //jika ada error
    if (PEAR::isError($db)) {
        die($db->getMessage());
    }
     
    // ....................
    //blok script
    // .....................
     
    //tutup koneksi database
    $db->disconnect();
    ?>

    selamat, kita berhasil mengkoneksikan PHP kita dengan MySql dengan menggunakan PEAR DB!

    yang paling penting adalah kita harus mengincludekan DB.php bawaan dari PEAR DB itu sendiri, karena class tersebut yang akan kita pakai…

    Seperti yang uda Cheyuz katakan tadi, kita juga dapat mengeset DSN dengan menggunakan array, script lengkapnya seperti berikut:

     <?php
    require_once 'DB.php';
     
    $dsn = array(
        'phptype'  => 'mysql',
        'username' => 'cheyuz',
        'password' => 'kukuruyuk',
        'hostspec' => 'localhost',
        'database' => 'cheyuz_db',
    );
     
    $options = array(
        'debug'       => 2,
        'portability' => DB_PORTABILITY_ALL,
    );
     
    $db =& DB::connect($dsn, $options);
    if (PEAR::isError($db)) {
        die($db->getMessage());
    }
    ?>

    Dibanding cara pertama, cara kedua tersebut lebih mudah dipahami dan lebih gampang dari segi pengubahan konfigurasinya, dan bisa ditambahkan konfigurasi lain…

    Untuk Postgre SQL, kita dapat mengganti tulisan “mysql” menjadi “pgsql“, cukup mudah kan?

    Ok, itulah artikel mengenai pembahasan PEAR PHP untuk koneksi database untuk mysql…
    Untuk pertanyaan, saran dan kritik silakan tuliskan di comment…

    This entry was posted on Monday, August 31st, 2009 at 05:25 and is filed under PHP, Tutorial. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
  • 0 Comments

    Take a look at some of the responses we have had to this article.

  • Leave a Reply

    Let us know what you thought.

  • Name(required):

    Email(required):

    Website:

    Message:

    Spam Protection by WP-SpamFree