RSS

Arsip Kategori: Komputer

Ide Membuat Script PHP untuk Pencarian dengan Multi Kategori


Dalam suatu aplikasi yang terkait dengan database, seringkali muncul fasilitas untuk pencarian data. Untuk mempersempit scope pencarian biasanya pencarian dilakukan berdasarkan kategori tertentu. Kategori pencarian bisa bersifat single category artinya hanya berdasar satu kategori pencarian saja atau ada yang bersifat multiple category atau multi kategori dimana user bisa melakukan pencarian berdasarkan lebih dari satu kategori.
Untuk membuat fasilitas pencarian berdasarkan satu kategori pada prinsipnya mudah. Sebagai contoh misalkan pencarian data mahasiswa, dimana user bisa melakukan pencarian berdasarkan salah satu dari kategori NIM, nama mahasiswa, alamat, jenis kelamin atau yang lain. Dalam hal ini (single category), prinsipnya hanyalah menggunakan statement kondisional saja. Jika yang dipilih adalah kategori NIM, maka jalankan query pencarian data berdasarkan kategori NIM. Jika yang dipilih adalah kategori nama mahasiswa, maka jalankan query pencarian data berdasarkan nama mahasiswa dan seterusnya. Saya kira mudah… dan tidak ada masalah. Read the rest of this entry »
 
Tinggalkan komentar

Ditulis oleh pada Minggu, Oktober 24, 2010 in Komputer

 

Menjumlahkan Isi Data di PHP


Catatan Penting:
Data yang dapat dijumlahkan harus berupa angka atau data string yang dapat diubah menjadi angka ( string yang terdiri atas huruf-huruf angka ).
Untuk menjumlahkan data yang berupa angka, entah itu integer atau bulat, currency atau uang, atau pecahan yang berupa tipe float atau double, dapat dilakukan dengan skrip PHP.
Untuk tipe array, dapat dilakukan penjumlahan biasa
Untuk yang berupa record database, dapat dilakukan dengan pengulangan atau iterasi.
Untuk array: Read the rest of this entry »

 
Tinggalkan komentar

Ditulis oleh pada Minggu, Oktober 24, 2010 in Komputer

 

>Membuat Guestbook dengan PHP


>

Pengenalan PHP
Tutorial yang saya tulis kali ini berhubungan dunia website yang menggunakan bahasa PHP. Sebelum masuk ke tips dan trik PHP, saya ingin berbagi sekilas tentang PHP. Ada beberapa pengertian tentang PHP. Akan tetapi, kurang lebih PHP dapat diartikan sebagai PHP Hypertext Preeprocesor. Ini merupakan bahasa yang hanya dapat berjalan pada server yang hasilnya dapat ditampilkan pada klien. Interpreter PHP dalam mengeksekusi kode PHP pada sisi server (server-side) berbeda dengan mesin maya java yang mengeksekusi program pada sisi klien (client-side).
Oke deh langsung ke tutor aja, lebih lengkap bisa di googling aja, ntar malah pada kabur he3x, ini adalah contoh script php.
<?php
echo "<b>Hello World</b>" ;
echo "<b>Halo Dunia</b>" ;
?>

penulisan <?php bisa juga tidak diikuti tulisan “php” jd bisa diawali “<?”dan diakhiri “?>”.
Lanjut, berikutnya langsung ke studi kasus, yaitu membuat halaman buku tamu. Berikut contoh programnya :
Buat database dengan nama “latihan”

Nama Field Tipe Data Ukuran Keterangan
id int 11 Primary Key, NOT NULL, AUTO_INCREMENT
nama varchar 25 NOT NULL
email varchar 50 NOT NULL
tanggal date NOT NULL
pesan varchar 250 NOT NULL

Buat halaman seperti berikut :

Atau tulis code programnya (guestbook.php):

<html>
<head>
<title>guestbook</title>
</head>

<body>
<p>Silahkan Tulis Komentar Anda di sini : </p>
<form id="form1" name="form1" method="post" action="input_pesan.php">
<table width="357" border="0" cellspacing="1">
<tr>
<td width="99">Nama</td>
<td width="6">:</td>
<td width="242"><input name="nama" type="text" id="nama" size="40" /></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="email" type="text" id="email" size="40" /></td>
</tr>
<tr>
<td>Komentar</td>
<td>:</td>
<td><textarea name="komentar" cols="37" rows="8" id="komentar"></textarea></td>
</tr>
<tr>
<td>&amp;amp;amp;amp;amp;amp;amp;nbsp;</td>
<td>&amp;amp;amp;amp;amp;amp;amp;nbsp;</td>
<td><input type="submit" name="Submit" value="Simpan" />
<input type="reset" name="Submit2" value="Batal" /></td>
</tr>
</table>
</form>
</body>
</html>

Kemudian buat file php dengan nama “input_pesan.php“dan tuliskan code program berikut ini :

<?php
//AWAL KODE PROGRAM KONEKSI DATABASE
$host='localhost';
$user='root';
$pass='12345678';
$db='latihan';

mysql_connect($host,$user,$pass) or die ("Tidak terkoneksi ke Server");
mysql_select_db($db) or die ("Database tidak ditemukan");
//AKHIR KODE PROGRAM KONEKSI DATABASE

$valid_mail = "^([._a-z0-9-]+[._a-z0-9-]*)@(([a-z0-9-]+.)*([a-z0-9-]+)(.[a-z]{2,3}))$";
if (!eregi($valid_mail, $_POST['email'])||empty($_POST['nama'])||empty($_POST['pesan'])) {
$error = TRUE;
}
if ($error) {
if(empty($_POST['nama'])){
echo "<li>Anda belum mengisi <b>Form Nama</b></li>";
}
if (!eregi($valid_mail, $_POST['email'])){
echo "<li>Penulisan alamat E-mail Anda salah!</li>";
}
if(empty($_POST['pesan'])){
echo "<li>Anda belum menuliskan <b>Komentar Anda</b></li>";
}
}
else{
$lindungi_nama=strip_tags($_POST[nama]);
$lindungi_email=strip_tags($_POST[email]);
$lindungi_pesan=strip_tags($_POST[pesan],"<br />");
$tanggal_sekarang=date("Ymd");

$query = "INSERT INTO guestbook (nama , email, tanggal, pesan)
VALUES ('$lindungi_nama','$lindungi_email','$tanggal_sekarang','$lindungi_pesan')";
$result = mysql_query($query);

if ($result) {
//MENAMPILKAN GUESTBOOK
echo "<b>Pesan Anda berhasil disimpan..!!!</b>";
$query = "SELECT * FROM guestbook ORDER BY id DESC";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) {
echo "<p><b>Nama :</b> $row[nama]<br>
<b>Email :</b> $row[email]<br><b>Tanggal :</b> $row[tanggal]<br>
<b>Pesan :</b> $row[pesan]<br>";
}
}
else {
echo "Maaf pesan Anda tidak dapat disimpan...!!!!";
}
}
?>
Pada guestbook diatas penggunaan syntax html tidak akan dieksekusi, karena dengan fungsi “strip_tags” dapat menghilangkan kode-kode html atau php yang dimasukan oleh pemakai melalui keyboard.
 
Tinggalkan komentar

Ditulis oleh pada Sabtu, Oktober 23, 2010 in Komputer

 

>Membuat Fungsi Tanggal Indonesia (Database)


>

Secara default, format tanggal dalam database MySQL mengacu berdasarkan format tanggal barat, yaitu Tahun-Bulan-Tanggal. Untuk membuktikannya, silahkan lihat gambar pada tutorial sebelumnya.

Tentu hal ini tidak sesuai dan tidak familiar dengan format tanggal di negara kita, yaitu Tanggal-Bulan-Tahun. Oleh karena itu, pada tutorial kali ini kita akan mencoba membuat fungsi yang akan memanipulasi tampilan tanggal dalam format indonesia. Pertama-tama, buat dulu fungsinya sebagai berikut:

Skrip fungsi_indotgl.php
<?php
    function tgl_indo($tgl){
      $tanggal = substr($tgl,8,2);
      $bulan    = getBulan(substr($tgl,5,2));
      $tahun    = substr($tgl,0,4);
      return $tanggal.” ”.$bulan.” ”.$tahun;        
    }    
    function getBulan($bln){
      switch ($bln){
        case 1:
          return “Januari”;
          break;
        case 2:
          return “Februari”;
          break;
        case 3:
          return “Maret”;
          break;
        case 4:
          return “April”;
          break;
        case 5:
          return “Mei”;
          break;
        case 6:
          return “Juni”;
          break;
        case 7:
          return “Juli”;
          break;
        case 8:
          return “Agustus”;
          break;
        case 9:
          return “September”;
          break;
        case 10:
          return “Oktober”;
          break;
        case 11:
          return “November”;
          break;
        case 12:
          return “Desember”;
          break;
    }
}
?>

Kemudian panggil fungsi_indotgl.php pada skrip berikut:

<?php
include “fungsi_indotgl.php”;

mysql_connect(“localhost”,”root”,””);
mysql_select_db(“inventory”);

echo “<table cellpadding=5>
      <tr><th>KODE</th><th>NAMA BARANG</th><th>STOK</th>
          <th>TGL.MASUK</th><th>HARGA</th></tr>”;

$query=mysql_query(“SELECT * FROM barang”);

while ($r=mysql_fetch_array($query)){
  // Ubah format tanggal menjadi format indonesia
  $tanggal = tgl_indo($r[tgl_masuk]);
 
  // Ubah format harga dengan fungsi number_format
  $harga = number_format($r[harga],0,”,”,”.”);
 
  echo “<tr bgcolor=$warna>
          <td>$r[kode]</td>
          <td>$r[nama]</td>
          <td>$r[stok]</td>
          <td><b>$tanggal</b></td>
          <td>Rp. $harga</td></tr>”;
}
?>

Perhatikan hasilnya pada kolom TGL.MASUK pada gambar berikut:

Download source code

 
Tinggalkan komentar

Ditulis oleh pada Sabtu, Oktober 23, 2010 in Komputer, Uncategorized

 

>Cara Mendeteksi Input Username yang Sama


>

Bagaimana cara melakukan cek terhadap input username yang sama, karena username itu kan unik, artinya username tiap user harus berbeda? Ya, betul sekali .. kalau dilihat dari struktur tabelnya, seharusnya username dijadikan sebagai kunci utama (Primary Key). Lihat gambar berikut:
 
Sehingga, misalnya ada user yang memasukkan username yang sudah dimiliki oleh user lain, maka data tersebut tentu tidak akan tersimpan di database. Mungkin, maksud Anda bagaimana cara memberitahukan user bahwa username tersebut sudah dimiliki oleh user lain dan berikan pemberitahuan kepadanya agar memasukkan username yang berbeda.

Oke, cara sederhananya bisa dilihat pada skrip berikut:

// Cek username di database
$cek_username=mysql_num_rows(mysql_query
             (“SELECT username FROM users
               WHERE username=’$_POST[username]'”));

// Kalau username sudah ada yang pakai
if ($cek_username > 0){
  echo “Username sudah ada yang pakai. Ulangi lagi”;
}
// Kalau username valid, inputkan data ke tabel users
else{
  mysql_query(“INSERT INTO users(username,
                                 password,
                                 nama_lengkap,
                                 level)
                      VALUES(‘$_POST[username]’,
                             ‘$_POST[password]’,
                             ‘$_POST[nama_lengkap]’,
                             ‘$_POST[level]’)”);
}

 
Tinggalkan komentar

Ditulis oleh pada Sabtu, Oktober 23, 2010 in Komputer

 

>Mengubah Format Uang Menjadi Rupiah (Database)


>

Dalam sesi tutorial ini, kita akan mengawalinya dengan trik sederhana untuk mengubah format angka/uang standar MySQL menjadi format rupiah. Misalnya dalam database tersimpan data 2500000, tentu ketika ditampilkan apa adanya menjadi sulit dibaca, sehingga agar lebih friendly perlu diubah ke format rupiah menjadi 2.500.000 kan lebih familiar. Untungnya, si PHP mempunyai fungsi untuk menangani hal tersebut, yaitu fungsi number_format() yang sintaks lengkapnya sebagai berikut:

number_format($angka,jml_desimal,pemisah_desimal,pemisah_angka);

– $nilai: angka/bilangan yang akan diubah formatnya.
– jml_desimal: jumlah angka yang diinginkan dibelakang koma.
– pemisah_desimal: tanda untuk memisahkan bilangan pecahan. (biasanya tanda koma).
– pemisah_angka: tanda untuk memisahkan angka (setiap tiga angka).

contoh: number_format(2500000,2,”,”,”.”);
hasilnya: 2.500.000,00

Untuk lebih jelasnya, saya akan memberikan contoh langsung yang berhubungan dengan database, misalnya kita mempunyai tabel barang yang berisi data sebagai berikut:

Sekarang kita akan mencoba mengubah tampilan harga dalam format uang rupiah, langsung aja tulis skrip berikut:

<?php
mysql_connect(“localhost”,”root”,””);
mysql_select_db(“inventory”);

echo “<table cellpadding=5>
      <tr><th>KODE</th><th>NAMA BARANG</th><th>STOK</th>
          <th>TGL.MASUK</th><th>HARGA</th></tr>”;

$query=mysql_query(“SELECT * FROM barang”);

while ($r=mysql_fetch_array($query)){
  // Ubah format harga dengan fungsi number_format
  $harga=number_format($r[harga],0,”,”,”.”);
 
  echo “<tr bgcolor=$warna>
    <td>$r[kode]</td><td>$r[nama]</td><td>$r[stok]</td>
    <td>$r[tgl_masuk]</td><td>Rp. $harga</td></tr>”;
}
?>

Perhatikan hasilnya pada kolom HARGA pada gambar berikut:

Download source code

 
Tinggalkan komentar

Ditulis oleh pada Sabtu, Oktober 23, 2010 in Komputer

 

>Setting dan konfigurasi Router Mikrotik


>LAN —> Mikrotik RouterOS —> Modem ADSL —> INTERNET
Untuk LAN, kita menggunakan ip address class C, dengan network 192.168.10.0/24. Untuk Mikrotik RouterOS, kita perlu dua ethernet card. Satu (ether1 – 192.168.1.2/24) untuk sambungan ke Modem ADSL dan satu lagi (ether2 – 192.168.10.1/24) untuk sambungan ke LAN. Untuk Modem ADSL, IP kita set 192.168.1.1/24.
Sebelum mengetikkan apapun, pastikan Anda telah berada pada root menu dengan mengetikkan “/”
1. Set IP untuk masing² ethernet card
ip address add address=192.168.1.2/24 interface=ether1 (public)
ip address add address=192.168.10.1/24 interface=ether2 (local)
Untuk menampilkan hasil perintah di atas ketikkan perintah berikut:
ip address print

Kemudian lakukan testing dengan mencoba nge-ping ke gateway atau ke komputer yg ada pada LAN. Jika hasilnya sukses, maka konfigurasi IP Anda sudah benar
ping 192.168.1.1
ping 192.168.10.10
2. Menambahkan Routing
ip route add gateway=192.168.1.1
3. Setting DNS
ip dns set primary-dns=202.134.1.10 allow-remote-requests=yes
ip dns set secondary-dns=202.134.0.155 allow-remote-requests=yes
Karena koneksi ini menggunakan Speedy dari Telkom, maka DNS yg aq pake ya punya Telkom. Silahkan sesuaikan dengan DNS provider Anda.
Setelah itu coba Anda lakukan ping ke yahoo.com misalnya:
ping yahoo.com
Jika hasilnya sukses, maka settingan DNS sudah benar
4. Source NAT (Network Address Translation) / Masquerading
Agar semua komputer yg ada di LAN bisa terhubung ke internet juga, maka Anda perlu menambahkan NAT (Masquerade) pada Mikrotik.
ip firewall nat add chain=srcnat action=masquerade out-interface=ether1
Sekarang coba lakukan ping ke yahoo.com dari komputer yang ada di LAN
ping yahoo.com
Jika hasilnya sukses, maka setting masquerade sudah benar
5. DHCP (Dynamic Host Configuration Protocol)
Karena alasan supaya praktis, temenku pengin pake DHCP Server. Biar klo tiap ada klien yang konek, dia ga perlu setting IP secara manual. Tinggal obtain aja dari DHCP Server, beres dah. Untungnya Mikrotik ini juga ada fitur DHCP Servernya. Jadi ya ga ada masalah.. 8)
* Membuat IP Address Pool
ip pool add name=dhcp-pool ranges=192.168.0.2-192.168.0.254
* Menambahkan DHCP Network
ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=202.134.1.10,202.134.0.155
* Menambahkan Server DHCP
ip dhcp-server add name=DHCP_LAN disabled=no interface=ether2 address-pool=dhcp-pool
Sekarang coba lakukan testing dari komputer klien, untuk me-request IP Address dari Server DHCP. Jika sukses, maka sekali lagi, settingannya udah bener
6. Management Bandwidth
Agar semua komputer klien pada LAN tidak saling berebut bandwidth, maka perlu dilakukan yg namanya bandwidth management atau bandwidth control, idea: (saya menggunakan simple que supaya lebih mudah ;
queue simple add name=”Billing” target-address=192.168.10.2/32 dst-address=0.0.0.0/0 interface=Local queue=default priority=8 limit-at=16000/32000 max-limit=16000/64000
queue simple add name=”Kasir” target-addresses=192.168.10.3/32 dst-address=0.0.0.0/0 interface=Local parent=Shaping priority=8 queue=default/default limit-at=0/8000 max-limit=0/256000 total-queue=default
Lanjutkan perintah tersebut untuk semua client yang ingin di limit bnadwithnya.
7. Graphing
Mikrotik ini juga dilengkapi dengan fungsi monitoring traffic layaknya MRTG biasa. Jadi kita bisa melihat berapa banyak paket yg dilewatkan pada PC Mikrotik kita.
tool graphing set store-every=5min
Berikutnya yang akan kita monitor adalah paket² yg lewat semua interface yg ada di PC Mikrotik kita, klo di komputerku ada ether1 dan ether2.
tool graphing interface add interface=all store-on-disk=yes
Sekarang coba arahkan browser anda ke IP Router Mikrotik. Klo aq di sini:
http://192.168.10.1/graphs/
Nanti akan ada pilihan interface apa aja yg ada di router Anda. Coba klik salah satu, maka Anda akan bisa melihat grafik dari paket2 yg lewat pada interface tersebut.

 
Tinggalkan komentar

Ditulis oleh pada Sabtu, Oktober 16, 2010 in Komputer

 
 
%d blogger menyukai ini: