Programming Learning

Free IT e-learning

[Delphi] Koneksi Delphi – MySQL dengan menggunakan ZEOS

Delphi merupakan rapid programming dimana terdapat banyak komponen-komponen add-in yang dapat ditambahkan di delphi. komponen-komponen tersebut ada yang gratis maupun berbayar, contoh salah satu komponen delphi yang telah terbundle secara rapi adalah jedi dengan alamat referensi http://www.delphi-jedi.org/.

Di tutorial ini saya akan membahas salah satu komponen gratisan yang digunakan sebagai konektor untuk menghubungkan aplikasi dengan database, fasilitasnya cukup komplit karena dapat menghandle koneksi mulai dari MySQL sampai Oracle. komponen ini dapat didownload di http://sourceforge.net/projects/zeoslib, penggunaannya pun sangat mudah dan tidak memerlukan banyak waktu untuk melakukan koneksi dengan database. dalam penggunaannya, zeos tidak memerlukan ODBC (Open Database Connectivity). untuk masalah kehandalan, zeos dapat dikatakan cukup handal sebagai komponen konektor database, selain itu para pengembang zeos juga masih selalu aktif untuk melakukan perubahan-perubahan versi yang dapat dikatakan bahwa zeos sendiri masih hidup.

Untuk melakukan koneksi dengan zeos, terlebih dahulu kita harus menginstall zeos di delphi, karena saya memakai delphi 2009 . sebagai informasi bahwa walaupun zeos yang didownload ada package untuk delphi 2009 tetapi pada kenyataanya masih belum dapat diinstall di delphi 2009, untuk itu bagi para pengguna delphi 2009 dapat mendownload package zeos yang telah dimodif disini http://rapidshare.com/files/237345412/zeosdbo2009.7z . untuk menginstallnya sebagai berikut, buka delphi lalu pilih “ZeosDBO_D2009.groupproj” (untuk delphi 2009 link yang telah saya sediakan), ZComponent.dpk(untuk delphi 7). lalu untuk delphi 2009 akan muncul pada window project manager(lokasi default panel sebelah kanan), akan muncul jendela baru project manager untuk delphi 7.  khusus untuk delphi 7, silahkan pilih package untuk delphi 6 karena apabila anda memilih package delphi 7 maka akan timbul pesan error tidak dapat diinstall, hal ini terjadi pada setiap versinya dan saya selaku penulis tidak mengetahui kenapa hal ii tidak terjamah oleh para pengembang zeos. Untuk delphi 2009 pilih salah satu dpk lalu klik kanan dan pilih menu Compile All From Here dan setelah selesai meng-compile klik kanan lagi dan klik install, untuk delphi 7 klik install dan apabila berhasil akan muncul kotak dialog yang menunjukkan bahwa penginstallan telah selesai dijalankan seperti gambar berikut :

Dialog penginstallan zeos berhasil.

Setelah selesai melakukan proses penginstallan, arahkan library path delphi ke dalam direktori zeos, untuk delphi 7 dapat dilakukan dengan memilih menu Tools->Environment Options lalu pilih tab library dan tekan tombol yang menunjukkan library path dan akan muncul kotak diaog dan klik tombol dengan caption “…” lalu arahkan ke direktori <Folder Zeos>packagesdelphi6build lalu tekan OK dan klik tombol Add (apabila terdapat salah langkah mohon maaf karena saya tidak menggunakan delphi 7 lagi jadi langkah-langkah tersebut hanya sebatas ingatan saya saja🙂 ).untuk Delphi 2009 pilih tools->Options dan pilih menu dari treeview yang bernama Library – Win32 setelah itu klik tombol yang ada di area library path dan tekan tombol “…” lalu arahkan ke direktori <Folder Zeos>packagesdelphi2009 lalu klik OK dan klik tombol Add. Zeos untuk dapat berfungsi dengan baik memerlukan library MySQL yaitu libmysql yang dapat didownload di link ini , letakkan kedua LibMySQL tersebut di direktori Windows (default : C:Windows).

Apabila telah benar-benar selesai melakukan penginstallan zeos secara menyeluruh seperti langkah-langkah di atas maka selanjutnya adalah mengimplementasikan koneksi aplikasi dengan MySQL menggunakan komponen zeos yang telah terinstall. buka project baru dan pilih komponen TZConnection dan TZQuery yang terdapat di bagian Zeos Access . List komponen Zeos 2009 adalah sebagai berikut :

Zeos Component

Untuk membuat aplikasi terkoneksi dengan database, kita gunakan TZConnection sebagai pusat koneksi dengan database, kali ini saya akan memberi contoh bagaimana mengkoneksikan zeos dengan database MySQL. berikut ini adalah skemanya :

Skema Koneksi

Gambar di atas adalah skema koneksi antara Zeos dengan MySQL. untuk mengimplementasikannya, kita akan mengkoneksikan zeos dengan database bawaan MySQL yaitu bernama “mysql” untuk itu tempelkan komponen TZConnection ke dalam form baru dan set propertinya sebagai berikut :

  • User              : root <atau sesuai dengan konfigurasi user MySQL anda>
  • Protocol     : mysql
  • Port              : 3306 <atau sesuai dengan konfigurasi port MySQL anda>
  • HostName : Localhost <bisa diisi dengan IP komputer>
  • Database    : mysql<contohnya>
  • Connected : True

Apabila Connected dapat True dan tidak ada pesan error maka selamat anda telah berhasil mengkoneksikan aplikasi dengan MySQL dengan baik tetapi apabila tidak maka silahkan periksa kembali settingan yang anda buat apakah telah sesuai atau belum. Untuk mengetes apakah telah benar-benar terkoneksi atau belum kita tambahkan TZQuery ke dalam form lalu set properti seperti berikut :

  • Name            : qAct <biar sesuai dengan koding yang akan saya contohkan>
  • Connecton : ZConnection1 <sesuai dengan nama yang anda buat pada komponen TZConnection>

Lalu tambahkan komponen TDataSource ke dalam aplikasi dan set properti seperti berikut :

  • Name           : dsAct
  • DataSet       : qAct

Lalu tambahkan juga komponen TDBGrid ke dalam form dan set properti DataSource menjadi dsAct, untuk melakukan aksi pengaksesan kita tambahkan Button dengan properti Name menjadi btnTampil, rancangan Formnya adalah sebagai berikut :

Rancangan Form

dan terakhir berikan kode pada event OnClick milik btnTampil sebagai berikut :

procedure TForm1.btnTampilClick(Sender: TObject);
begin
with qAct do
begin
Close;
SQL.Text := 'SELECT * FROM help_category';
Open;
end;
end;

Lalu coba jalankan aplikasi dengan menekan tombol pada keyboard F9 dan apabila telah berjalan tekan tombol Tampilkan dan apabila telah benar maka akan keluar data pada grid yaitu sebagai berikut :

Hasil Pengeksekusian Project

Catatan :

Ada 2 method yang harus diperhatikan dalam zeos, yaitu ketika kita menampilkan data struktur perintah TZQuery adalah sebagai berikut :

with ZQuery1 do
begin
Close;
SQL.Text := 'Perintah SQLnya';
Open; //digunakan untuk penampilan data
end;

Tetapi apabila kita ingin melakukan entry data (insert,update,delete) maka struktur perintah TZQuery adalah sebagai berikut :

with ZQuery1 do
begin
Close;
SQL.Text := 'Perintah SQLnya';
Execute; //digunakan untuk Entry data
end;

Untuk lebih jelasnya, anda dapat mendownload hasil project disini

Sekian dulu tutorial penggunaan zeos untuk koneksi aplikasi dengan MySQL semoga tutorial ini berguna bagi temen-temen sekalian.

45 responses to “[Delphi] Koneksi Delphi – MySQL dengan menggunakan ZEOS

  1. kurnia Mei 25, 2009 pukul 5:00 pm

    mas, ada tutorial lain gak
    soal penggunaan zeos,
    masih perlu pencerahan nie…

  2. Tigor Manurung Mei 25, 2009 pukul 5:04 pm

    penggunaan zeos di bagian mana yg sulit…dijabarkan aja ntar klo perlu tak buatin postingannya dsni.

  3. kurnia Mei 25, 2009 pukul 6:31 pm

    aku sebenere belum ada dasar di databasenya mas
    bukan di mysqlnya. tp di penggunaaan delphinya
    kemaren diberi tahu teman soal penggunaan
    zQuery.append untuk menambah
    zQuery.post untuk simpan
    zQuery.edit untuk edit
    zQuery.delete untuk delete

    padahal kadang, aku baca2 di internet ada cara2 lain
    jadi bingung diriku. aku harus belajar dari mana. aku baca di buku malah pake yang fieldbyname. yang bener yang mana mas?

    aku ada ebook delphi, tapi rata2 bahasa inggris semua dan itubun udah level tinggi.
    pake yang

  4. Tigor Manurung Mei 25, 2009 pukul 6:38 pm

    hmm…itu bisa digunkan tapi klo awal2 belajar mulailah dengan literatur yg tepat, dalam hal ini penggunaan ZQuery apabila saya cenderung lebih suka sbg contoh :
    with ZQuery1 do
    begin
    Close;
    SQL.Text := ‘INSERT INTO nmtabel(field1,field2)VALUES(“‘ + ed1.Text + ‘”,”‘ + ed2.Text + ‘”)’;
    ExecSQL;
    end;
    yah seperti itulah…jadi langsung tembak sintak SQLnya…untuk FieldByName lebih saya gunakan untuk pengambilan data saja…tapi mungkin sesuai dengan kebutuhan juga…mungkin dapat lihat di https://programminglearning.wordpress.com/2009/05/15/delphi-penyimpanan-data-ke-database-secara-massal/ untuk contoh penggunaan ZQuery.

  5. kurnia Mei 25, 2009 pukul 6:56 pm

    ok mas, aku juga td cari refrensi soal memasukkan data ke combobox pake yang itu. sql.add() itu. cuman belum mudeng bener bedanya apa sama yang diajarin temenku, dengan fieldbyname, fieldvalues dkk. mbok nek kalo ada ebooknya aku dibagi mas. pusing juga baca buku tapi gak cocok. aku ada buku pake ado (access). padahal aku pengene belajar langsung mysql aja.

    btw, langsung menuju ke tkp

  6. chandra Juni 17, 2009 pukul 4:19 am

    pak, saya sudah melakukan install zeosdbo_2009
    saat selesai tidak ada keterangan error. sama seperti screenshot yang ada. ketika menggunakan tzconnection waktu memilih protocol ada keterangan abstract error. Kenapa ya? belum saya coba install ulang zoesnya.
    thanks

  7. Tigor Manurung Juni 18, 2009 pukul 6:19 am

    @chandra: kadang2 error tsb memang ditemukan,mungkin lom terlalu sempurna dalam transform ke delphi 2009…apabila ada waktu and lom release versi revisinya saya akan mncoba memperbaikinya…

  8. fariz Juni 18, 2009 pukul 11:40 pm

    Mas saya ingin tanya setelah saya install zeos saya mencoba program simpan massal settelah saya run selalu ada tulisan” File not found:’ZConnection.dcu. Karena baru dan ingin belajar delphi jadi ingin tahu sebabnya??
    Terima Kasih

    • Tigor Manurung Juni 22, 2009 pukul 4:03 am

      itu krena path library blum diarahkan,klo pke delphi 7 di Tools->Environment Options->Library->Library Path klik tombol di samping kanan lalu tambahkan path komponen zeos yang terinstall (biasanya cukup di [$FOLDERZEOS]\Packages\Delphi$\Build\

  9. fariz Juni 25, 2009 pukul 12:04 am

    sudah mas,setelah saya tambahkan pathnya ga tau yang mana punya Delphi 2009 setelah ngga minta file ZConnection.dcu jadi saya tambahkan semua folder yg ada di dalam ZEOSDBO2009. Tapi sekarang setelah menekan conected True selalu ada tulisan Abstract Error. Trus gimana mas??
    Terima Kasih

  10. indri Agustus 5, 2009 pukul 2:56 am

    mas,,mau tanya..
    kenapa ya klo saya menuliskan syntak selain
    “select * from nama_tabel” pasti minta ZDbcPostgreSqlUtils.pas..
    mohon petunjuknya..
    terima kasih..

  11. Eko Wahyudin Agustus 20, 2009 pukul 8:23 am

    komponen Zeos tersebut belum sempurna dalam konversi ke Delphi 2009. ini terjadi karena perubahan tipe data Char yang dalam versi sebelumnya UTF8 (1 byte), sekarang menjadi unicode Char (2 byte). Akibat dari itulah banyak terjadi kesalahan fatal pada saat mengakses driver databasenya.

    saya sendiri memakai zeos untuk membuka platform sqlite. banyak sekali terjadi error.

    • Tigor Manurung September 25, 2009 pukul 6:59 pm

      yup tepat sekali, apalagi founder zeos tidak mempunyai cukup dana utk membeli lisensi D2009, wah sungguh disayangkan apabila terhenti developmentnya…ayo yang pake zeos donasi dunk, hehhehehe…

  12. fajar September 23, 2009 pukul 6:34 pm

    mau tanya nih master…apa bedanya pake Zeos sama dbExpress???toh hasilnya sama ja kan???emg apa sih kelebihan Zeos??..mksh untuk jwbn nya,he..

    • Tigor Manurung September 25, 2009 pukul 6:58 pm

      hmm…klo gw sih cenderung ke zeos karena tidak perlu repot2 setting ODBC ke client(DBExpress pake ODBC g ya, gw lupa…hehhehehe) and dalam penggunaannya jg tidak repot, multi DB lagi, bisa database dari sqllite sampe oracle🙂 .

  13. fajar September 25, 2009 pukul 7:34 pm

    Walah bang tagor eh maap,he… bang tigor..dbExpress juga g perlu pake ODBC… gw nanya gt krn g prnah pake Zeos,hi..hi.. mau nyoba ah..th`x ya ^__^

  14. Putu Swastawa Oktober 20, 2009 pukul 2:00 pm

    silakan deh coba, ada program yang saya gratisin, make zeoslib, tapi saya kebetulan nggak punya D2009, hanya ada D7.🙂

    jamin, bikin aplikasi jadi cepet!

    salam bahagia

  15. Putu Swastawa Oktober 20, 2009 pukul 2:01 pm

    oh ya, klo boleh sharing dunk D2009. aq nggak ada kartu kredit jadi nggak bisa beli D2009 ataupun D2010 online!

    salam bahagia

    • einsthonk Oktober 20, 2009 pukul 2:03 pm

      wah syang sekali saya g menyediakan software baj*kan🙂

      sepertinya banyak deh yang dah di cra*k D2009, coba aja search di google🙂

      mksudnya suruh nyoba, nyoba apa y🙂

  16. adi wira kusuma Desember 4, 2009 pukul 7:10 am

    Aku dah berhasil install ZEOSDBO-6.6.5-stable pd delphi 6. Tapi ketika aku konek dg suatu table maka selalu gagal. Kenapa ya? Anehnya ketika ku drop tablename property nya mau muncul daftar namanya (logikaku berarti kan koneksinya tlh jalan). Tapi ketika ku aktifkan (active:=true), maka muncul error : Unknown Mysql data type!

    NB: Aq pakai WampServer Version 2.0, dimana situ ada mysql versi 5.1.36, Apache Version : 2.2.11 ,PHP Version : 5.3.0

    Apa aq perlu buat user baru ya? Sebab dalam koneksiku ku set sbb:
    Database: adi
    hostname= localhost
    port=0
    protocol=mysql
    password=
    user=root

    apa ada yg salah mas? Tolong dong dijawab, OK. Thx B4

  17. eko teguh Januari 1, 2010 pukul 9:12 am

    Saya sebagai newbie untuk urusan Zeos, bbrapa saat yg lalu saya install Zeos Lib 6.6.5 – stable, waktu instalasi (saya kira) so far so good aja, namun pas di coba buat program kecil muncul error sebagai berikut:

    None of the dinamic libraries can be found : libmysql51.dll, libmysql50.dll, libmysql.dll

    Sebelumnya saya nggak menyerah begitu saja, saya coba install di PC2 yang laen berikut juga saya coba pada OS yg berbeda ( Windows 7 dan Windows XP ) hasilnya : SAMA

    Terus terang, saya mohon bantuannya untuk pencerahaan bagi saya seorang Newbie….terima kasih

  18. Andri Januari 4, 2010 pukul 9:57 am

    Misi Om…
    saya mo minta tlg, klo ada boleh minta tutorial atau modul tentang membuat database delphi 7 & mysql 5 gax?
    saya baru belajar2 bikin database & masih kesulitan dengan masalah koneksi delphi – mysqlnya…
    klo bisa tlg kirim ke email saya ya🙂 tp klo enggak ya…gax apa2. sekian permohonan ini saya sampaikan kepada anda, terima kasih.
    semoga tambah sukses

  19. Fajri Januari 19, 2010 pukul 8:24 am

    saya mau nanya…..
    misalnya ada database khs dengan menggunakan delphi….
    terus saya mau onlinekan dengan menggunakan php&mysql…
    apakah untuk mengambil field beserta datanya bisa menggunakan zeos juga?untuk menkonversi data di delphi ke mysql….. mohon pencerahannya…..
    terima kasih

  20. satudelapanenam Maret 25, 2010 pukul 4:10 pm

    mas, mau nanya…
    saya punya stored procedure di mysql tanpa paramater, untuk “call stored procedure” dengan zstoredproc bisa nggak mas?, tolong penjelasannya….
    terima kasih

  21. satudelapanenam Maret 29, 2010 pukul 2:08 am

    terdapat beberapa error,
    klo yang tanpa parameter sudah teratasi tapi, yang dengan parameter error,
    ni syntak dan error nya:
    with s_query do
    begin
    Close;
    SQL.Text := ‘call proc_save’;
    ParamByName(‘NIP’).Value := ‘ednik.Text’;
    ParamByName(‘nama’).AsString := ‘ednama.Text’;
    ExecSQL;
    First;
    end;

    errornya :
    s_query: Parameter ‘NIP’ not found,
    padahal di stored proc database saya udah ada
    “CREATE DEFINER = ‘root’@’localhost’ PROCEDURE `proc_save`(
    IN nip INTEGER(14),
    IN nama VARCHAR(30),”, tolong bantuannya mas, terimakasih…

  22. Sigit Anggoro Juni 7, 2010 pukul 5:32 am

    Ass Wr Wb
    Salam Sejahtera Semuanya..

    Maaf bro..ikut nimbrung nih..
    koq Komponent Zlib tuk konek MySQl yg pake Procedure g mau..y..gmn..??

  23. Dwi Hardiyanto Juli 18, 2010 pukul 5:39 pm

    Mas…maaf sebelumnya,
    saya punya masalah nih Mas..
    saya punya DataBase misal 4 kolom..nah yang 2 kolom rencananya insert dari server yg 2 dari Client (saya pake MySQL 5,Delphi 7,dan Zeos Connection)..
    kalau dari Komp Client insert nya kok g mau y mas??padahal udah pake banyak cara insert..
    cuma karna hanya insert 2 dari 4 kolom saya pake ‘WHERE nama_kolom1= ‘+ edit1.text;
    supaya insertnya g melenceng dari 4 kolom tadi…

    mungkin mas punya cara insert lain…mohon bantuannya,
    makasih…

    barang kali bersedia bisa kirim lewat email saya(gh_oce_ne@yahoo.com) atau bls langsung dsini jg gpp.

    mkasih banyak mas…

  24. Bager Agustus 2, 2010 pukul 5:09 pm

    Zeos emang TOP..i luv poll ;-))

  25. ratno Agustus 15, 2010 pukul 5:50 am

    Tambah masalah nich boss, saya coba tanya ke google, tanya di forum FB , belum nemu jawabnya .
    Termasuk saya coba uprek property dan event milik zquery dan ztable.

    Masalahya begini, Ketika kolom di mysql terisi kata ‘ MERAH’ oleh client lain, maka form delphi yang berwarna merah di komputer saya akan close.

    jika client lain mengisi biru , maka form saya yang berwarna biru akan bekerja.

    saya coba AFTERINSERT kok tidak respon, saya coba onchange di datasource malah langsung kerja saat di RUN……..waduh..waduh….

  26. alie Desember 17, 2010 pukul 8:39 am

    salam kenal mas………..
    saya baru ajah ambil zeos n selesai install, terus saya praktekean.. tetapi koq error ya…
    apa ada ada salah / kurang pada saat install ????
    zeos di aktifkan pada saat event on show di from

    procedure TfrmLogin.FormShow(Sender: TObject);
    begin
    ZConnection1.HostName := ‘192.168.0.1’;
    ZConnection1.Database := ‘dbToko’;
    ZConnection1.Protocol := ‘mysql’;
    ZConnection1.Connect;
    end;

    errornya.
    Source File not Found : ZPlainLoader.pas
    Path to source file
    ZplainLoader.pas

    mohon pencerahannya..
    trim’s

    • Tigor Manurung Desember 20, 2010 pukul 3:06 am

      itu path librarynya lum terdaftar,pake delphi 7?coba di Tools->Environment Options trus masuk ke tab “Library” dan tambahkan path zeos disitu,biasanya ada di folder (klo ga salah) [Zeos Dir]\Packages\Delphi[versinya]

  27. trisa Januari 31, 2011 pukul 2:34 am

    Semua uda aku praktekin master tapi kok masih error ya…
    errornya seperti ini :

    [Fatal Error] uMain.pas(7): File not found: ‘ZSysUtils.dcu’

    link download libmysqlnya uda mati..mohon diperbaiki dong master.., saya cari di google cuma ketemu satu yaitu libmysql.dll, aku taruh di C:/WINDOWS..
    Mohon pencerahannya master….

    • Tigor Manurung Januari 31, 2011 pukul 2:41 am

      sudahkah anda menambahkan library path ke delphi anda???

      di versi 7 ada di tools->environment…(lupa nama tepatnya)

      di versi setelahnya ada di tools->options trus masuk ke menu delphi options->library

      tambahkan path komponen zeos disitu.

      link libmysql akan saya update hari ini.terima kasih telah memberitahukannya🙂

  28. Dimas April 20, 2011 pukul 9:11 am

    Mas, saya udah ikuti saran diatas.
    saya pake mysql 5.5.
    ketika di koneksikan ada pesan error ‘Application violation at address 0000000’.
    itu kenapa ya?
    terus kenapa kalo pake dbexpress dia slalu ada tulisan ‘Failure to connect: can’t found libmysql.dll’
    bisa kasih tutor untuk ngebenerinnya gak mas?
    tolong bales ya, secepatnya.
    soalnya saya ada deadline tugas kuliah nih..

    • maghfuri Juli 20, 2011 pukul 10:34 am

      Salam kenal Pak Tigor. Mohon bantuan Pak Tigornya nih..
      Saya udah download contoh program bapak, yang pake database MySql, tabel help_category. Ketika saya run, saya tekan tombol tampilkan, lalu saya ubah data dikolom ‘name’ trus pindah ke baris berikutnya, lalu saya tekan Tampilkan lagi. (semua ok dan perubahan data saya berhasil).
      Yang saya tanyakan, kenapa ketika saya ubah sumber tabelnya dari database lain dan berhasil ditampilkan, tapi ketika merubah recordnya kok gak berhasil??
      Terima kasih sebelumnya atas bantuannya🙂

  29. anak ganteng September 13, 2011 pukul 4:12 am

    tanks om artikelnya…ana cari2 ketemu juga nih….

  30. septianw Februari 5, 2012 pukul 11:17 pm

    wah link buat downloadnya mati tuh. ada yang mo bantu idupin gak?

  31. odiceo April 8, 2012 pukul 7:13 am

    Amigo saludos, antes que nada darle las gracias por compartir sus conocimientos, por favor necesito de su ayuda, llevo dos días tratando de conectar delphi 6.6 con mysql5, utilizo w7 64bit, sé que esto es el problema, lo que no se como solucionarlo, he intentado por ado, intale el driver odbc, cuando lo configuro para la raíz de las conexiones no tiene problema me funciona bien, ahora cuando por delphi trato hacer la conexión utilizando ado me sale un error
    Error en la prueba de conexión al iniciar el proveedor. Error no especificado.
    Desistí por aquí e instale zeos6.6, instalación bien, cuando trato de conectar, me dice librería no encontrada, libmysql (50 y 51).dll logre descargar la libmysql.dll y la 50, la 51 no hay quien la encuentre, la pegue en system 32 y no se resolvió nada, por favor que puedo hacer, estoy comenzando en esto de la programación, saludos y gracias de antemano.En el tercer comentario usted dice que lo soluciono pegando el libmysql.dll en la directorio de la aplicación, por favor si me pudiera decir exactamente donde es eso(donde guarda su proyecto o en algún lugar de delphi)
    (odiceomartinez@gmail.com)

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: