Sabtu, 21 Januari 2012

Membuat Warna Baris Tabel Selang-Seling dengan PHP

Pada artikel kali ini, saya akam membahas bagaimana cara membuat warna baris suatu tabel selang-seling menggunakan PHP.

Misal kita mengambil data dari database MySQL, ditampilkan dalam bentuk tabel HTML. Kita mau memberi warna berbeda pada tiap baris ganjil dan genapnya. Misal baris pertama warna putih, kedua abu-abu, ketiga putih lagi, keempat abu-abu lagi dst. Oh iya, dalam kasus ini anda sudah harus bisa mengambil data dari MySQL menggunakan PHP ya. Kalau belum bisa, silakan lihat artikel saya yang "Menampilkan data/ isi dari tabel MySQL menggunakan PHP".

Pertama kita tampilkan data dari tabel MySQL, yang disajikan dalam table HTML.

-----------------mulai kode PHP----------------------

<html>
<head>
<title>Membuat warna tabel selang-seling</title>
</head>
<body>

<h2>Membuat warna tabel selang-seling</h2>

<?
///membuat koneksi ke database
$server="localhost"; ///nama server
$username="root"; ///nama username mysql
$password="1234"; ///password, kosongkan jika tidak ada
$database="latihan_php"; ///nama database yang dipilih

mysql_connect($server, $username, $password) or die ("Koneksinya Gagal"); ///koneksi ke database
mysql_select_db($database) or die ("Databasenya Gak Ada"); ///memilih database, dan menampilkan pesan jika gagal

$pilih=mysql_query("SELECT * FROM pengunjung"); ///mengambil data dari tabel MySQL pengunjung

echo "<table border=\"1\" width=\"90%\">"; //membuat tag pembuka table
echo "<tr><td>Nama</td><td>Alamat</td><td>Telepon</td></tr>"; //membuat heading table

///tampilkan data dengan 'while'
while($pilih2=mysql_fetch_array($pilih)) ///mengambil data ke variabel $pilih2 dari $pilih
{
echo "<tr>";
echo "<td>$pilih2[nama_pengunjung]</td>";
echo "<td>$pilih2[alamat]</td>";
echo "<td>$pilih2[telepon]</td>";
echo "</tr>";
}

echo "</table>"; //membuat tag penutup table
?>

</body>
</html>

-----------------akhir kode PHP----------------------

Save kode di atas dengan nama "tabel-warna-selang-seling.php" atau nama lain terserah.

Jika kita lihat, data sudah tampil tapi belum ada warna selang-seling nya. Gimana cara buatnya? Kita edit sedikit kode di atas.

Logikanya adalah, kita akan memberi warna berbeda di tiap baris ganjil dan genap. Berarti kita harus bisa mengidentifikasi mana baris ganjil mana yang genap. Gimana caranya? Pakai modulus. Apa itu modulus? Modulus itu adalah sisa bagi.

Misal, 4 dimodulus 2 hasilnya 0 (nol). Karena 4 dibagi 2 hasilnya bilangan bulat. Jadi gak ada sisanya. Kalau 5 dimodulus 3 hasilnya 1. Karena hasil dari 5 bagi 3 bukan bilangan bulat. Nah, dikasus ini kita mau tahu mana baris ganjil, mana baris genap kan? Jadi kita pake modulus 2. Jadi tiap baris di modulus 2, hasilnya dicek. Yang hasilnya 0 (nol) berarti genap, yang hasilnya 1 (satu) berarti ganjil. Baru deh di tag <tr> nya nanti ditambahin atribut "bgcolor" yang sesuai.

Langsung aja kita edit kode di atas jadi seperti di bawah ini.

-----------------mulai kode PHP----------------------

<html>
<head>
<title>Membuat warna tabel selang-seling</title>
</head>
<body>

<h2>Membuat warna tabel selang-seling</h2>

<?
///membuat koneksi ke database
$server="localhost"; ///nama server
$username="root"; ///nama username mysql
$password="1234"; ///password, kosongkan jika tidak ada
$database="latihan_php"; ///nama database yang dipilih

mysql_connect($server, $username, $password) or die ("Koneksinya Gagal"); ///koneksi ke database
mysql_select_db($database) or die ("Databasenya Gak Ada"); ///memilih database, dan menampilkan pesan jika gagal

$pilih=mysql_query("SELECT * FROM pengunjung"); ///mengambil data dari tabel MySQL pengunjung

echo "<table border=\"1\" width=\"90%\">"; //membuat tag pembuka table
echo "<tr bgcolor=\"#ABCDEF\"><td>No</td><td>Nama</td><td>Alamat</td><td>Telepon</td></tr>"; //membuat heading table

$baris=1; //menambahkan variabel baris

///tampilkan data dengan 'while'
while($pilih2=mysql_fetch_array($pilih)) ///mengambil data ke variabel $pilih2 dari $pilih
{
//kode untuk menentukan warna
if($baris%2==0) //memodulus $baris, jika hasilnya 0 (nol), berarti genap, beri warna yang ditentukan
{
echo "<tr bgcolor=\"#CCCCCC\">"; //memberi warna abu-abu pada baris genap
}
else //kalau di atas sudah mencari yang genap, otomatis tan ini selain yang genap.
{
echo "<tr bgcolor=\"#FFFFFF\">"; //memberi warna putih pada baris ganjil
}
//akhir kode menetukan warna

echo "<td>$baris</td>";
echo "<td>$pilih2[nama_pengunjung]</td>";
echo "<td>$pilih2[alamat]</td>";
echo "<td>$pilih2[telepon]</td>";
echo "</tr>";

$baris++; //menambahkan variabel baris dengan nilai 1.
}

echo "</table>"; //membuat tag penutup table
?>

</body>
</html>

-----------------akhir kode PHP----------------------

Save kembali dan coba lihat hasilnya. Warna baris tabel sudah selang-seling kan? Kalau belum berarti ada yang salah hehehe....

Oke sekian artikel Membuat Warna Baris Tabel Selang-Seling dengan PHP ini. Mudah-mudahan berguna.
Read More...

Minggu, 08 Januari 2012

Membuat Kolom dan Baris Tabel HTML Otomatis Dengan PHP Menggunakan Sintaks FOR

Kali ini saya akan membahas pembuatan skrip tabel otomatis dengan PHP menggunakan sintaks FOR.

Apa itu tabel otomatis? Biasanya kita mau membuat tabel itu kan harus kita tentuin dulu berapa kolomnya, berapa barisnya. Kalau membuat tabel dengan jumlah baris dan kolom yang sedikit, mudahlah. Tapi kalau mau bikin 100 baris dan 100 kolom? Gempor kan? Hehe..

Kali ini kita akan membuat tabel dimana kolom dan barisnya ditentukan oleh nilai yang kita buat di sintaks FOR. Sebagai contoh aja, kita akan buat 20 baris dan 10 kolom. Langsung ke TKP gan..

------------------ mulai kode PHP ------------------

<?
echo "<h3>Kolom dan baris tabel otomatis</h3>";

echo "<table border=\"1\" width=\"100%\">"; //membuat tag pembuka table

for($i=1; $i<=20; $i++) //membuat pengulangan baris sebanyak 20
{
echo "<tr>"; //mencetak baris (tag pembuka)

//disini mulai pengulangan kolom
for($j=1; $j<=10; $j++) //membuat pengulangan kolom sebanyak 10
{
echo "<td>Baris: $i<br />Kolom: $j</td>"; //mencetak kolom tabel
} //akhir pengulangan kolom

echo "</tr>"; //mencetak baris (tag penutup)
}

echo "</table>"; //membuat tag penutup table
?>

------------------ akhir kode PHP ------------------

Keterangan:
++ Pertama kita menentukan dulu FOR untuk barisnya. Dalam contoh ini kita beri 20.
++ Lalu di antara tag <tr> dan </tr> kita sisipkan lagi FOR untuk pengulangan kolom tabelnya. Dan tentu saja tag kolom <td></td> jangan dilupain.
++ Teknik FOR yang kita gunakan adalah Nested FOR, alias FOR di dalam FOR.
++ Jadi bisa dilihat, ada FOR untuk kolom yang kita sisipkan di FOR untuk baris.

Semoga berguna artikelnya.
Read More...

Minggu, 01 Januari 2012

Membuat Deret Fibonacci Dengan PHP

Oke, kali ini saya akan membahas bagaimana membuat deret Fibonacci dengan PHP.

Sebelum mulai, saya jelaskan dulu apa itu Fibonacci. Fibonacci adalah suatu deret angka yang bilangan selanjutnya dihasilkan dari dua angka sebelumnya. Contohnya kaya ini: 0 1 1 2 3 5 8 13 21 ... n.

Sebelum buat skrip nya, kita harus tahu dulu logikanya. Fibonacci itu diawali dua angka, yaitu 0 dan 1. Lalu angka berikutnya dihasilkan dari dua angka sebelumnya. Jadi jika 0 dan 1 berturut-turut adalah bilangan pertama dan kedua, maka bilangan ketiga dihasilkan dari penjumlahan bilangan pertama dan kedua. Jadi, bilangan ketiga adalah 1 yang diapat dari penjumlahan 0 dan 1. Jadi deretnya jadi 0 1 1. Bagaimana mencari bilangan keempatnya? Tinggal jumlahkan dua angka sebelumnya, yaitu bilangan kedua dan bilangan ketiga. Didapatkan bilangan kedua dan ketiga berturut-turut 1 dan 1. Jadi bilangan keempat adalah 2, sehingga deret menjadi 0 1 1 2. Selanjutnya bilangan kelima didapat dari penjumlahan bilangan ketiga dan keempat, yaitu 1 dan 2. Sehingga didapat bilangan kelima adalah 3. Jadi deret nya sekarang 0 1 1 2 3.

Gimana? Sudah dapat gambarannya? Oke, langsung ke skrip PHP nya. Kita akan membuat deret Fibonacci sebanyak 10 digit.

------------------ mulai kode PHP ------------------

<?
echo "<h3>Fibonacci</h3>";

$a=0; //bilangan pertama kita isi 0
$b=1; //bilangan kedua kita isi 1

echo "$a $b "; //mencetak dua angka awal

for($i=1; $i<=8; $i++) //memulai pengulangan untuk mencetak 10 digit angka Fibonacci. diisi angka 8 karena ada dua bilangan awal
{
$c=$a+$b; //$c adalah bilangan yang kita cari. didapat dari penjumlahan dua bilangan sebelumnya.

$a=$b; //bilangan pertama mengambil nilai bilangan kedua
$b=$c; //bilangan kedua mengambil nilai bilangan yang dicari

echo "$c "; //mencetak bilangan ketiga, keempat dst (dalam kasus ini sampai bilangan kesepuluh).
}
?>

------------------ akhir kode PHP ------------------

Coba tes..! Woala.. bisa kan..?

Bingung? Saya coba jelaskan sedikit.

++ Pertama kita inisiasikan dulu dua bilangan awal. Pertama 0 di $a dan 1 di $b.
++ Kita cetak angan 0 dan 1 tadi dengan echo.
++ Mulai pengulangan dengan FOR. Kita isi angka 8 karena kita akan melakukan pengulangan 10 kali, di mana dua angka sudah dicetak terlebih dahulu.
++ Bilangan yang kita cari kita masukkan di $c. jadi $c didapat dari $a+$b;
++ Bilangan pertama yang di $a kita rubah nilainya dengan mengambil nilai yang ada di $b.
++ Begitu juga bilangan kedua di $b kita rubah dengan mengambil nilai $c.

Mudah-mudahan bisa dimengerti dan berguna.
Read More...