Tampilkan postingan dengan label Materi PHP. Tampilkan semua postingan
Tampilkan postingan dengan label Materi PHP. Tampilkan semua postingan

PHP Tutorial I : Installasi web server dan database server

Sabtu, 27 Februari 2010

Pada utorial ini mari kita belajar bersama menginstall web server dan database server di komputer kita. Hal ini sangat berguna untuk belajar dan mencoba script kita. Bayangkan apabila belajar PHP saja harus bolak-balik upload lewat FTP. Sungguh tidak menyenangkan tentunya.

Di bagian ini kita akan mempersiapkan hal-hal

yang dibutuhkan untuk belajar PHP. Lihat daftar berikut:

  1. >Installer Server: AppServ, Xampp, dan lain-lain
    AppServ adalah paket installer untuk Windows yang membundel program opensource yang terdiri dari:
  2. Text editor: Notepad atau lainnya (Scite, Ultra Edit, Notepad++, dan lain-lain)
    PHP adalah berupa script yang tidak perlu dikompilasi. Dengan menggunakan Notepad pun kita sudah bisa, akan tetapi apabila ingin lebih mudah kita bisa memanfaatkan software text editor yang memang didesain untuk itu. fasilitas yang biasanya ada adalah syntax hiliter dan line numbering.
  3. Browser: Internet Explorer atau lainnya (Mozilla Firefox, Opera, dan lain-lain)
    Browser digunakan untuk menampilkan script yang telah kita buat.

Yang harus Anda lakukan adalah mendapatkan paket installer. Untuk tutorial kali ini digunakan Appserv. Kita bisa memperolehnya di http://www.AppServNetwork.com dengan ukuran sekitar 14kb untuk AppServ versi 2.5.8. Sekarang mari kita install.

  1. Klik ganda file yang telah kita peroleh tadi
    instalasi appserv langkah 1

  2. Klik agree untuk melanjutkan installasi
    instalasi appserv langkah 2
  3. Klik next atau ganti "Destination Folder" apabila Anda ingin menginstallnya di tempat lain
    instalasi appserv langkah 3

  4. Karena semua paket instalasi dibutuhkan, maka langkah selanjutnya adalah klik next
    instalasi appserv langkah 4

  5. Isikan "Server Name" misalnya localhost, dan email Anda misalnya eko@imut.com, selanjutnya klik next
    instalasi appserv langkah 5
  6. Isi password Anda dua kali dan klik install
    instalasi appserv langkah 6

  7. Proses instalasi akan berjalan dan tunggu hingga selesai. Klik Finish
    instalasi appserv langkah 7

    instalasi appserv langkah 8

  8. Buka browser Anda misalnya Internet Explore dan ketikkan localhost di address bar, kemudian tekan enter. Apabila muncul tampilan seperti gambar di bawah ini berarti proses instalasi sudah berhasil.
    tampilan localhost dari appserv

  9. Selanjutnya klik tulisan phpMyAdmin Database Manager atau ketik localhost/phpmyadmin di address bar kemudian tekan enter.
  10. Kemudian Anda diminta mengisikan username dan password.
    Username : root
    Password : sesuai yang Anda isikan waktu instalasi
    password di phpmyadmin

  11. Klik OK, kemudian akan muncul tampilan seperti ini:
    phpmyadmin screenshot

  12. Proses installasi webserver dan database server selesai dan berfungsi sebagaimana mestinya. Selanjutnya kita bisa melanjutkan ke tahap selanjutnya.

PHP Tutorial III: Belajar PHP dari awal

Setelah menginstall server web, PHP dan server adatabase yang dibundle dalam appserv, mari kita belajar syntax-syntax PHP. Bagi Anda yang belum pernah belajar pemrograman sebelumnya tidak usah takut belajar karena PHP sangatlah mudah dan tidak harus menghafal keseluruhan syntax. Melihat cheatsheet adalah suatu hal yang biasa bagi pemula bahkan bukan suatu hal yang memalukan bagi yang sudah mahir

sekalipun.

Setelah kita menginstall appserv maka beginilah susunan direktori kita:

  • C:/appserv
    • Apache2.2
    • MySQL
    • php5
    • www
      • appserv
      • phpMyAdmin
      • belajar

Kita dapat mengakses / mengeksekusi file php kita dengan mengetikkan alamat di web browser kita (firefox, ie, opera, dll). Silahkan ketik localhost di browser Anda. Maka akan tampil halaman pembuka dari appserv.
Apabila kita mengetik localhost maka file yang diakses adalah c://appserv/www/index.php

Mari kita belajar syntax-syntaxnya. Terlebih dahulu mari kita buat sebuah direktory baru dengan nama belajar. Letaknya adalah C:/appserv/www/belajar
Setelah selesai mari kita buka notepad atau text editor lain yang Anda suka. Ketik beberapa baris kode berikut ini:

  1. echo 'hai aku belajar php dengan gecko, loh!!';
  2. ?>

Kemudian simpan dengan nama halo.php

Perlu digarisbawahi, pastikan extensi dari file Anda adalah *.php. Untuk notepad cara menyimpannya adalah pilih Save As | file type ganti dengan All Files | ketik nama filenya; halo.php | save

Sudah selesai. Tinggal mengakses dengan browser. Caranya ketik localhost/belajar/halo.php di browser kemudian pencet enter.
Coba juga mengetikkan localhost/belajar. maka kita akan melihat list file yang ada di direktori belajar. Mengapa? karena kita tidak membuat file devault di direktori kita. Biasanya berupa file dengan nama index.php atau index.htm atau index.html.

Coba lagi dengan membuat mengetikkan syntax berikut:

  1. // selain pakai echo, dengan print juga bisa
  2. print "halo, belajar php dengan mudah yuk!!!!!!";
  3. ?>

  4. Aku di luar syntax php. jadi aku adalah HTML biasa

Sudah pinter khan? Ntar dilanjut lagi. Saran penulis, banyak baca... di sini sebagai awalnya. Anda yang bisa mengembangkannya sendiri

Prinsip Dasar Pemrograman PHP

Sebelum lebih jauh mari kita kenali dulu struktur dan aturan dasar dalam pemrograman PHP. Dalam tutorial kali ini alat yang diperlukan yaitu:

  • Editor text yang bagus, bukan sekedar notepad. Tapi kita membutuhkan editor text yang memberikan kemudahan kepada kita misalnya text highliting, auto completion, line numbering dll. Penulis memakai Notepad++.
  • Browser: Firefox, opera atau IE

a. Awal dan Akhir Tags PHP

Pada contoh di bawah ini kita akan menggunakan sebagai akhir tags PHP. Semua karakter di dalam tags PHP ( sesudah ) akan diolah oleh intrepeter PHP. Sedangkan di luarnya ( sebelum ) akan diabaikan oleh intrepeter PHP.

Untuk jelasnya mari kita lihat contoh berikut:

  1. Lima ditambah lima sama dengan:
  2. Tiga ditambah tiga sama dengan :
  3. print 3 + 3;
  4. ?>
  5. "http://www.gecko.web.id">gecko
  6. "http://www.gecko.web.id/watermark.jpg">

Contoh di atas sama saja dengan kode HTML berikut:

  1. Lima ditambah lima sama dengan:
  2. 10

  3. Tiga ditambah tiga sama dengan :
  4. 6

  5. "http://www.gecko.web.id">gecko
  6. "http://www.gecko.web.id/watermark.jpg">

Dan di browser menghasilkan:

hasil belajar contoh satu

Di PHP versi-versi terdahulu juga menggunakan short open tags. Tags ini masih berfungsi di PHP 5 akan tetapi dapat dinon aktifkan dengan merubah konfigurasi PHPnya. jadi lebih baik menggunanan

b. Whitespace

  1. "Hello"; print " World!"; ?>

Perhatikan kode di atas. Sulit dibaca bukan? akan lebih baik apabila ditulis demikian.

  1. print "Hello";
  2. print " World!";
  3. ?>

Lebih mudah dibaca bukan?

Berikut penulisan yang kurang pas, walaupun menghasilkan tampilan yang sama di browser

  1. print "Hello";
  2. print " World!";
  3. ?>
  4. Terlalu mengumbar enter heheheh.

  5. Kalau yang dibawah terlalu banyak spasinya.
  6. print "Hello" ;
  7. print " World!" ;
  8. ?>
  9. kalo yang di bawah ini terlalu mepet. terlalu pelit spasi

  10. "empet-empetan jadi susah bacanya"; ?>

c. Case-Sensitivity

Fungsi-fungsi di PHP tidak case sensitive. Jadi tidak ada perbedaan anatara penggunaan huruf besar dan kecil. Contoh di bawah ini menghasilkan output yang sama.

  1. // Empat baris script ini menghasilkan output yang sama
  2. print number_format(285266237);
  3. PRINT Number_Format(285266237);
  4. Print number_format(285266237);
  5. pRiNt NUMBER_FORMAT(285266237);

Di beberapa sumber menyebutkan bahwa eksekusi fungsi dengan huruf kecil lebih cepat daripada fungsi yang ditulis dengan huruf besar atau ditulis menggunakan kombinasi huruf besar dan kecil. Jadi ga ada ruginya menggunakan huruf kecil saja, betul?

Catatan: Berbeda halnya kalau berurusan dengan file. Di server dengan mesin LINUX penamaan file adalah case sensitif. File dengan nama gecko.jpg berbeda dengan GECKO.JPG

d. Comment

Di PHP ada 2 macam comment:

  • single line comment
  • multi line comment

Single Line Comment bisa menggunakan # atau //

Contoh penggunaannya sebagai berikut:

  1. print "Belajar PHP bareng gecko"; //ini adalah komentar
  2. //bisa juga ditulis di sini
  3. print "

    Belajar menuliskan komentar di PHP"; #bisa juga memakai tanda pagar

  4. #menggunakan tanda pagar untuk komen
  5. #ini juga masih komen
  6. //belajar itu enaknya praktek langsung, betul????
  7. ?>

Multi line comment menggunakan tanda /* sebagai awal dan */ sebagai akhir komentar

Contoh penggunaannya sebagai berikut:

  1. echo 'ini kode PHP';
  2. /* INI ADALAH CONTOH PENGGUNAAN KOMEN
  3. di bagian ini masih komen
  4. ini juga masih komen
  5. emmmm.. belajar PHP menyenangkan yah...
  6. - betul??
  7. - walaupu ada kode PHP
  8. di dalam juga masih di anggap komen. Betul???
  9. - tags HTML juga ga masalah
  10. - tetep dianggap komen
  11. INI AKHIR KOMENNYA> LIHAT TANDANYA */
  12. echo 'Kalo ini sudah bukan komentar lagi';
  13. ?>

catatan: kalo HTML komennya seperti ini

  1. echo 'hai..... aku ditulis pake PHP'; //hi aku komen PHP
  2. ?>

Sudah faham khan? Kalo ada pertanyaan, silahkan...

Semoga berguna

Membuat Kamus sederhana Inggris - Indonesia dengan PHP dan MySQL

Untuk tutorial selanjutnya gw pengen bikin kamus. hal yang bisa kita pelajari di sini adalah:

  1. bagaimana membuat proyek sederhana,
  2. export csv ke MySQL
  3. bagaimana menghubungkan dengan database mySQL,
  4. bagaimana menampilkan data dan
  5. memanfaatkan pencarian dengan PHP.

Untuk mempermudah mereka yang ingin belajar maka proyek ini saya buat sesederhana mungkin agar mudah dipahami. Apabila Anda ingin mengembangkannya silahkan dan alangkah baiknya kalo Anda share di sini.

PERSIAPAN

Baiklah mari kita mulai, tapi sebelumnya siapkan siapkan alat dan bahan berikut:

  1. server PHP dan server mysql / appserv / xamps : baca artikel instalasi webserver (Appserv)
  2. text editor (notepad++, scite, ultraedit, dll) atau Dreamweaver.
  3. database dari gkamus (gkamus-en.dict dan gkamus-id.dict)

Hal paling penting di kamus adalah databasenya.Setelah nanya-nanya om google akhirnya nemu databasenya gkamus (http://gkamus.sourceforge.net). Syukurlah databasenya public domain, artinya bisa kita pakai di tutorial ini. Makasih buat saudara Ardhan Madras, Firmansyah dan Hantarto Gunawan.

EXPORT DATABASE KE CSV

Database di sini ada dua macam yaitu:

  1. gkamus-en.dict : kamus English ke bahasa Indonesia
  2. gkamus-id.dict : kamus bahasa Indonesia ke English

Selanjutnya database ini kita convert (ubah) menjadi bentuk mysql. Nantinya kita buat dua tabel yakni tabel english dan tabel indonesia.

Mari kita obok-obok database. pertama kita export menjadi bentuk *.CSV lewat excel. Buka aja file gkamus-en.dict dan gkamus-id.dict tadi. tapi satu-satu ajah biar ga ribet. Kalo ga bisa buka sini gw ajarin buka. caranya klik kanan open trus pilih "select program from list" klik OK dan pilih "Microsoft office excel".

Ini screen shotnya.

membuat kamus screen shot database kamus

Kemudian hapus yang tidak berguna. Hapus baris 1 sampai dengan 5. delete rows. Ok siap diexport ke *.csv.
Pilih file | save as another format | di bagian save as type pilih "CSV (comma delimited)". Kasih nama english. Klik save apabila ada prompt klik yes

PENTING:
lakukan juga search an replace karakter " (double quote) menjadi ` (back quote)
ini penting agar waktu import ke mySQL tidak mengalami error.
Catatan: backquote bukanlah quote. Kalo di keyboard gw letaknya di bawah tilde (~)

simpan database kamus jadi csv file
Lakukan juga pada file satunya kemudian export ke *.csv dengan nama indonesia

Apabila ingin tahu hasil exportnya ini gw share: indonesia.csv dan english.csv.

EXPORT CSV KE MySQL

Untuk export dari csv ke MySql kita pakai phpmyadmin. Omong-omong phpmyadmin ini udah ada di bundle phpmyadmin. buka http://localhost dan ada akan mendapatinya di situ.

klik phpmyadmin

Klik link tersebut. kalo diminta password, masukkan user dan password Anda, apabila phpmyadmin-nya belum ada set biasanya user: root dan passwordnya kosong. Kemudian buat database dengan nama kamus.Klik tombol ciptakan.

buat database

Kemudian buat tabel dengan nama "english" jumlahnya 2 fields.

buat tabel di phpmyadmin

Klik go.

Kemudian isikan propertynya. Set seperti ini:

kata : VARCHAR : 100
arti : TEXT :

properti tabel kamus.english

Kemudian klik save.

Struktur tabel english sudah jadi. Sekarang mari kita import file CSV kita.

  1. klik Import di menu atas phpmyadmin.
  2. klik browse dan arahkan ke english.csv
  3. klik go.

Data sudah diimport tinggal tambah kolom id , jadikan primary key dan auto increement.

  1. klik tabel english di bagian kiri
  2. pilih add 1 field. letaknya pilih at beginning of table
  3. klik go
  4. isi dengan
    Field : id
    type : INT
    extra : auto_increement
    pilih primary key

primary dan auto increement

Jadi deh tabel english kita.
Tinggal bikin tabel indonesia. langkahnya sama seperti tadi. field-fieldnya juga sama seperti tadi.
Jangan lupa import seperti tadi dan jangan lupa pula untuk search and repalce karakter double quote (") menjadi back quote(`) biar sewaktu importnya ga error.

Kalo bingung navigasi di phpmyadmin coba klik kata kamus di kiri. Itu akan membawa kita kembali ke halaman depan database kita; yakni database kamus.

Kalo sudah jadi akan tampak seperti inilah database kita.

database kamus

Menampilkan database Kamus dengan PHP

Sekedar mengingat kembali, kita tadi sudah membuat:

  • database dengan nama kamus,
  • dua buah tabel yang masing-masing namanya english dan indonesia
  • kemudian masing-masing tabel berisi field id, kata dan arti

Ok mari kita mulai koding.
Penulis menggunakan appserv untuk servernya. Untuk xamp atau lainnya bisa menyesuaikan.

Pertama kita buat folder dengan nama kamus di folder www. Path lengkapny adalah "C:AppServwwwkamus"
nantinya kita dapat mengakses kamus kita melalui browser dengan alamat "http://localhost/kamus"

Ke dua kita buat file tampil.php
dan isi dengan script berikut untuk koneksi ke database.

  1. // SETTING
  2. $db_host = "localhost";
  3. $db_user = "root"; // isi sesuai user mysql Anda
  4. $db_pass = "sipit"; // isi sesuai password mysql Anda
  5. $db_name = "kamus"; // nama database anda
  6. // KONEKSI KE DATABASE
  7. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
  8. mysql_select_db ($db_name) or die ("Ga bisa select database");
  9. ?>

Ke tiga tambahkan script untuk menampilkan database. Script lengkapnya seperti ini

  1. // SETTING
  2. $db_host = "localhost";
  3. $db_user = "root"; // isi sesuai user mysql Anda
  4. $db_pass = "sipit"; // isi sesuai password mysql Anda
  5. $db_name = "kamus"; // nama database anda
  6. // KONEKSI KE DATABASE
  7. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
  8. mysql_select_db ($db_name) or die ("Ga bisa select database");
  9. // MENAMPILKAN SEMUA DATA
  10. // - masih menampilkan data tanpa pemisah
  11. $sql = mysql_query("SELECT * from english") or die(mysql_error());
  12. while ($res=mysql_fetch_array($sql)) {
  13. echo $res['id'];
  14. echo $res['kata'];
  15. echo $res['arti'];
  16. }
  17. ?>

Script di atas akan menampilkan semua data di tabel english dan tanpa pemisah.

Untuk memisahkan per data coba tambahkan
pada akhir script, dan untuk memisahkan per field kita bisa pakai dash (-) seperti contoh di bawah ini:
Atau terserah Anda untuk menampilkan data seperti yang Anda kehendaki.

  1. $sql = mysql_query("SELECT * from english") or die(mysql_error());
  2. while ($res=mysql_fetch_array($sql)) {
  3. echo $res['id'];
  4. echo $res['kata'];
  5. echo $res['arti'];
  6. echo '
  7. ';
  8. }

Ke empat misalkan kita ingin menampilkan data yang cocok dengan kata gecko.
Kita tinggal memodifikasi SQLnya. seperti ini:

  1. $sql = mysql_query("SELECT * from english where kata = 'gecko' ") or die(mysql_error());
  2. while ($res=mysql_fetch_array($sql)) {
  3. echo $res['id'] . ' - ';
  4. echo $res['kata'] . ' - ';
  5. echo $res['arti'];
  6. echo '
    '
    ;
  7. }

Cermati kode SELECT * from english where kata = 'gecko'

hasil pertama kamus

Ke empat bagaimana apabila kita ingin melakukan kata yang mendekati / mirip?
jawabnya gampang. tinggal tambahkan % di awal dan atau akhir kata yang dicari dan mengubah = dengan LIKE

contohnya seperti ini

  1. SELECT * from english where kata LIKE 'ge%'

Coba ganti dengan '%ge%' atau '%ge' maka Anda akan mendapatkan hasil yang berbeda.

Hasilnya seperti ini:

hasil kamus

Cuman seperti itu. Gampang khan?

Membuat Form Pencarian

Sekarang kita buat form pencariannya.

buat file berikut dan simpan dengan nama cari.php

  1. "post" action="tampil.php">
  2. Kata yang dicari: "text" name="cari" id="cari" />

  3. "submit" name="submit" id="submit" value="Submit" />

Form sederhana di atas apabila diklik akan mengarah ke file tampil.php dengan membawa nilai post cari ($_POST['cari'])

Memodifikasi Tampil.php untuk Menghandle Form Pencarian

tampil.php kita edit seperti di bawah ini agar bisa menangkap variabel post ($_POST['cari'])

  1. ari = $_POST['cari']; // menangkap inputan dari fiel cari di form pada file cari.php
  2. // SETTING
  3. $db_host = "localhost";
  4. $db_user = "root"; // isi sesuai user mysql Anda
  5. $db_pass = "sipit"; // isi sesuai password mysql Anda
  6. $db_name = "kamus"; // nama database anda
  7. // KONEKSI KE DATABASE
  8. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
  9. mysql_select_db ($db_name) or die ("Ga bisa select database");
  10. // MENAMPILKAN SEMUA DATA
  11. // - masih menampilkan data tanpa pemisah
  12. $sql = mysql_query("SELECT * from english where kata LIKE '$cari' ") or die(mysql_error());
  13. while ($res=mysql_fetch_array($sql)) {
  14. echo $res['id'] . ' - ';
  15. echo $res['kata'] . ' - ';
  16. echo $res['arti'];
  17. echo '
    '
    ;
  18. }
  19. gt;

Kemudian apabila ingin menampilkan form dan hasil pencarian dalam satu halaman bisa menggunakan satu file berikut.

  1. "post" action="">
  2. Kata yang dicari: "text" name="cari" id="cari" />

  3. "submit" name="submit" id="submit" value="Submit" />

  4. $cari = $_POST['cari']; // menangkap inputan dari fiel cari di form pada file cari.php
  5. If (isset($cari)) {
  6. // SETTING
  7. $db_host = "localhost";
  8. $db_user = "root"; // isi sesuai user mysql Anda
  9. $db_pass = "sipit"; // isi sesuai password mysql Anda
  10. $db_name = "kamus"; // nama database anda
  11. // KONEKSI KE DATABASE
  12. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
  13. mysql_select_db ($db_name) or die ("Ga bisa select database");
  14. // MENAMPILKAN SEMUA DATA
  15. // - masih menampilkan data tanpa pemisah
  16. $sql = mysql_query("SELECT * from english where kata LIKE '$cari' ") or die(mysql_error());
  17. while ($res=mysql_fetch_array($sql)) {
  18. echo $res['id'] . ' - ';
  19. echo $res['kata'] . ' - ';
  20. echo $res['arti'];
  21. echo '
    '
    ;
  22. }
  23. }
  24. ?>

perubahannya adalah :

untuk redirect ke halamannya sendiri.
Atau bisa kita ubah menjadi "

kemudian untuk mengecek apakah inputannya sudah di set ataukah belum menggunakan:

  1. if (isset($cari)) {
  2. // kode isinya di sini
  3. //
  4. // kode isinya di sini
  5. }

Finaly

Akhirnya selesai sudah. Project kamus dengan PHP kita sudah selesai dan cuman diwakili oleh satu buah file kamus.php

Tentunya itu untuk keperluan belajar aja. Untuk aplikasi sebenarnya perlu beberapa opsi security dan tambahan fungsi. Mungkin ada yang nanya. Tabel indonesia-nya mo diapain?? Hehe itu untuk PR bikin kamus yang versi English ke bahasa Indonesia.

Yup PRnya dikumpulin lusa dan ga boleh kopas OK. Met belajar

Membuat Pencarian Sederhana dengan PHP dan MySQL

Kali ini kita akan mencoba pencarian sederhana dengan PHP. Pada pencarian ini kita akan mencari data yang ada di database mysql.

Yang dibahas di sini antara lain:

  • Pencarian di database mysql sederhana
  • Pencarian dengan 1 file php
  • mencegah menampilkan data apabila tombol submit belum diklik
  • Menampilkan nomor pencarian
  • menampilkan jumlah hasil pencarian
  • menampilkan pesan apabila hasil pencarian tidak ditemukan

Baiklah langsung aja kita mulai.

Langkah pertama adalah membuat database yang akan kita cari nantinya. Untuk lebih mudahnya gw siapkan query yang tinggal diexecute di PHPMyadmin Anda.

  1. --
  2. -- Struktur dari tabel `siswa`
  3. --
  4. CREATE TABLE IF NOT EXISTS `siswa` (
  5. `id` int(12) NOT NULL auto_increment,
  6. `nama` text NOT NULL,
  7. `sex` varchar(1) NOT NULL,
  8. PRIMARY KEY (`id`)
  9. ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=15 ;
  10. --
  11. -- Dumping data untuk tabel `siswa`
  12. --
  13. INSERT INTO `siswa` (`id`, `nama`, `sex`) VALUES
  14. (1, 'Kyubi naruto', 'L'),
  15. (2, 'Uchiha sasuke', 'L'),
  16. (3, 'Naruto Kun', 'L'),
  17. (4, 'Sasuke Kun', 'L'),
  18. (5, 'Sakura Chan', 'P'),
  19. (6, 'Konohamaru Chan', 'L'),
  20. (7, 'Hyuga Hinata', 'P'),
  21. (8, 'Hyuga Neji', 'L'),
  22. (9, 'Ichimaru', 'L'),
  23. (10, 'Yamakiba', 'L'),
  24. (11, 'Jiraiya', 'L'),
  25. (12, 'Orochimaru', 'L'),
  26. (13, 'Akamaru', 'L'),
  27. (14, 'Kakashi', 'L');

Caranya:

  1. Buat database dengan nama pencarian
    membuat database mysql
  2. Kemudian klik SQL pada tab menu atas.
  3. Kemudian paste kode sql di atas.
    exekusi query mysql di phpmyadmin
  4. Maka jadilah database Anda
    database siswa yang sudah jadi

Langkah ke dua adalah menampilkan data. Kita buat menampilkan data dulu kemudian nanti kita modifikasi untuk menampilkan hasil pencarian.

  1. kita buat dulu folder cari di dalam folder www (apabila menggunakan appserv) atau di dalam folder htdocs (apabila menggunakan xamps)
  2. kemudian kita buat file php dengan nama tampil.php
    1. // konfigurasi
    2. $db_host = "localhost"; // nama host
    3. $db_user = "root"; // username mysql
    4. $db_pass = ""; //password isi sesuai seting server Anda.
    5. $db_name = "pencarian"; // karena nama database yang kita buat adalah pencarian
    6. // koneksi ke database
    7. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
    8. mysql_select_db ($db_name) or die ("Ga bisa select database");
    9. // menampilkan data
    10. $sql = mysql_query("SELECT * FROM siswa") or die(mysql_error());
    11. while ($res=mysql_fetch_array($sql)) {
    12. echo $res[nama].'
      '
      ;
    13. }
    14. ?>

    ini adalah script sederhana untuk menampilkan data. Nantinya kita ubah agar bisa menampilkan hasil pencarian
  3. Merubah script agar bisa menampilkan data tertentu.
    Di sini kita tinggal mengubag kode SQLnya. Kita bisa menggunakan LIKE diikuti kata yang ingin dicari. Dan diikuti kata yang dicari dan diberi tanda %.
    Contoh: apabila kita ingin menampilkan semua siswa yang berawalan huruf s maka kita buat seperti ini:
    1. SELECT * FROM siswa WHERE nama LIKE 's%'

    Cukup mudah bukan? Mari kita lihat script selengkapnya:
    1. // konfigurasi
    2. $db_host = "localhost"; // nama host
    3. $db_user = "root"; // username mysql
    4. $db_pass = ""; //password isi sesuai seting server Anda.
    5. $db_name = "pencarian"; // karena nama database yang kita buat adalah pencarian
    6. // koneksi ke database
    7. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
    8. mysql_select_db ($db_name) or die ("Ga bisa select database");
    9. // menampilkan data
    10. // lihat perubahannya di bawah ini:
    11. $sql = mysql_query("SELECT * FROM siswa WHERE nama LIKE 's%' ") or die(mysql_error());
    12. while ($res=mysql_fetch_array($sql)) {
    13. echo $res[nama].'
      '
      ;
    14. }
    15. ?>
  4. Yang tidak boleh dilupakan tentunya adalah form pencariannya.OK mari kita buat file dengan nama form_cari.htm
    1. PENCARIAN:
    2. "tampil.php" method="post" name="pencarian" id="pencarian">
    3. "text" name="search" id="search">
    4. "submit" name="submit" id="submit" value="CARI">
    Sebuah form sederhana ini nantinya digunakan untuk memasukkan kata yang hendak kita cari.
    Cermati kode berikut ini:
    1. ... action="tampil.php" method="post" name="pencarian" id="penc...
    Ini maksudnya pencarian akan dilakukan di file tampil.php yakni file yang kita buat sebelumnya.
  5. Form pencarian sudah OK. Kita tinggal tangkap variabel dari form_cari.php.
    Karena metode yang digunakan adalah POST kita bisa menangkap variabelnya dengan $_POST['search'];
    search di sini adalah id dari Text Field di form pencarian.
    Ini dia script yang udah kita modifikasi:
    1. // konfigurasi
    2. $db_host = "localhost"; // nama host
    3. $db_user = "root"; // username mysql
    4. $db_pass = ""; //password isi sesuai seting server Anda.
    5. $db_name = "pencarian"; // karena nama database yang kita buat adalah pencarian
    6. // koneksi ke database
    7. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
    8. mysql_select_db ($db_name) or die ("Ga bisa select database");
    9. // menampilkan data
    10. // lihat perubahannya di bawah ini:
    11. $search = $_POST['search'];
    12. // kemudian kita ubah kata kunci pencarian menjadi variabel
    13. // lihat pada $search
    14. // untuk mencari kata yang mengandung kata tertentu, kita ubah tanda % menjadi di awal dan akhir kata kunci.
    15. $sql = mysql_query("SELECT * FROM siswa WHERE nama LIKE '%$search%' ") or die(mysql_error());
    16. while ($res=mysql_fetch_array($sql)) {
    17. echo $res[nama].'
      '
      ;
    18. }
    19. ?>

  6. Agar lebih simple kita bisa menjadikan 2 file (tampil.php dan form_cari.htm) menjadi satu file.
    Tapi kita juga harus memikirkan agar kode dieksekusi apabila tombol cari sudah dipencet. :D
    Tidak lucu apabila belum diapa-apain udah basah eh maaf, sudah mengeksekusi script. Yang ada hanyalah menampilkan halaman kosong atau lebih parah lagi menampilkan kode error.
    1. if ((isset($_POST['submit'])) AND ($_POST['search'] <> "")) {
    2. ...
    3. }

    Maksud kode di atas adalah kode yang diantara kurung kurawal hanya akan dieksekusi jika $_POST['submit']sudah diklik dan apabila ($_POST['search'] sudah ada nilainya.
    Mari kita lihat script yang sudah jadi. dan ingat cukup satu file ini untuk menghandle pencarian.
    1. PENCARIAN:
    2. "" method="post" name="pencarian" id="pencarian">
    3. "text" name="search" id="search">
    4. "submit" name="submit" id="submit" value="CARI">
    5. // konfigurasi
    6. $db_host = "localhost"; // nama host
    7. $db_user = "root"; // username mysql
    8. $db_pass = ""; //password isi sesuai seting server Anda.
    9. $db_name = "pencarian"; // karena nama database yang kita buat adalah pencarian
    10. // koneksi ke database
    11. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
    12. mysql_select_db ($db_name) or die ("Ga bisa select database");
    13. // menampilkan data
    14. // lihat perubahannya di bawah ini:
    15. if ((isset($_POST['submit'])) AND ($_POST['search'] <> "")) {
    16. $search = $_POST['search'];
    17. $sql = mysql_query("SELECT * FROM siswa WHERE nama LIKE '%$search%' ") or die(mysql_error());
    18. while ($res=mysql_fetch_array($sql)) {
    19. echo $res[nama].'
      '
      ;
    20. }
    21. }
    22. ?>

    23. Catatan:
    Perhatikan pula kode yang semula adalah tampil.php. Kode diatas untuk mencegah adanya error apabila nama file diganti dan akan mengeksekusi dirinya sendiri.

Sedikit Tambahan.

Kita coba modif dikit kode diatas agar bisa menampilkan:

  • nomor pencarian
  • jumlah pencarian
  • pesan apabila tidak ada hasil pencarian
  1. Untuk nomor pencarian kita bisa menggunakan increement dengan kode sederhana berikut:
    1. $nomor++; echo $nomor;
    Sangat mudah dan simple..
  2. Untuk jumlah pencarian kita bisa gunakan sedikit kode ini:
    1. $jumlah = mysql_num_rows($sql);
    2. echo 'Ada '.$jumlah.' data yang sesuai.';
  3. Sedangkan untuk pesan zero data kita bisa bikin conditional seperti ini:
    1. if ($jumlah > 0) {
    2. // kode menampilkan data
    3. }
    4. else { echo 'Maaf, hasil pencarian tidak ditemukan.';}

Kode lengkapnya seperti ini:

  1. PENCARIAN:
  2. "" method="post" name="pencarian" id="pencarian">
  3. "text" name="search" id="search">
  4. "submit" name="submit" id="submit" value="CARI">
  5. // konfigurasi
  6. $db_host = "localhost"; // nama host
  7. $db_user = "root"; // username mysql
  8. $db_pass = ""; //password isi sesuai seting server Anda.
  9. $db_name = "pencarian"; // karena nama database yang kita buat adalah pencarian
  10. // koneksi ke database
  11. $link = mysql_pconnect ($db_host, $db_user, $db_pass) or die ("Ga bisa connect");
  12. mysql_select_db ($db_name) or die ("Ga bisa select database");
  13. // menampilkan data
  14. if ((isset($_POST['submit'])) AND ($_POST['search'] <> "")) {
  15. $search = $_POST['search'];
  16. $sql = mysql_query("SELECT * FROM siswa WHERE nama LIKE '%$search%' ") or die(mysql_error());
  17. //menampilkan jumlah hasil pencarian
  18. $jumlah = mysql_num_rows($sql);
  19. if ($jumlah > 0) {
  20. echo '

    Ada '.$jumlah.' data yang sesuai.

    '
    ;
  21. while ($res=mysql_fetch_array($sql)) {
  22. $nomor++; echo $nomor.'. ';
  23. echo $res[nama].'
    '
    ;
  24. }
  25. }
  26. else {
  27. // menampilkan pesan zero data
  28. echo 'Maaf, hasil pencarian tidak ditemukan.';
  29. }
  30. }
  31. else { echo 'Masukkan dulu kata kuncinya';}
  32. ?>

Gw rasa itu aja cukup untuk pencarian. Hal-hal yang perlu dilakukan agar pencarian menjadi lebih baik adalah:

  1. menambahkan fasilitas anti sql injection
  2. anti XSS atack. Tapi bisa nggak yah XSS attack lewat pencarian gini?
  3. pencarian multi kolom
  4. pencarian dengan OR ata AND
  5. dan lain lain

Download file: kode lengkap pencarian sederhana mysql dan php

Related Posts with Thumbnails
 
 
 
 
Copyright © My Blog