Professional Documents
Culture Documents
Pengenalan PHP
1. Apa Itu PHP?
2. Instalasi PHP
3. Sintaks PHP
4. Variabel di PHP
5. Operator di PHP
6. Kondisional di PHP
7. Looping (Pengulangan) di PHP
2. Instalasi PHP
Untuk menjalankan PHP anda perlu Web Server seperti Apache, PHP Interpreter, MySQL
sebagai database. Saat ini ada banyak paket PHP+Apache+MySQL yang memudahkan anda
untuk instal PHP dengan mudah. Silahkan Download di salah satu situs-situs berikut, kemudian
ikuti petunjuk instalasi masing-masing paket.
WAMP (http://www.wampserver.com/en/download.php)
XAMP (http://www.apachefriends.org/en/xampp.html)
Kode PHP di jalankan di browser, terlebih dahulu harus dijalankan Apache Web Server,
kemudian di browser dijalankan di localhost.
Misal kita buat file php, yaitu : tes.php, yang disimpan di document root atau folder www maka
di browser kita ketik url di alamatnya adalah : http://localhost/tes.php
3. Sintaks PHP
Kode PHP di tulis di teks editor, sama halnya seperti HTML. Kode PHP bisa digabung atau
disisipkan dengan kode HTML, Javascript, CSS dan script lainnya untuk membuat halaman web.
Penulisan kode PHP harus di awali dengan <?php dan diakhiri dengan ?>
Untuk mengakhiri baris kode PHP harus diberi tanda titik koma (;) di akhir baris kode
PHP
Untuk penulisan komentar di awali tanda // atau antara /* dan */
Contoh :
<html>
<body>
<?php
echo "Hello World";
//ini komentar, tidak akan dieksekusi
?>
</body>
</html>
4. Variabel di PHP
Variabel di PHP diawali dengan tanda dollar ($) diikuti dengan nama variabel. Nama variabel
adalah case-sensitive, artinya huruf besar dan huruf kecil adalah berbeda. Contoh :
<html>
<body>
<?php
$teks="Hello World";
echo $teks; //Hasilnya Hello World
?>
</body>
</html>
Untuk menggabungkan dua variabel atau lebih gunakan operator titik (.) atau langsung ditulis
diantara tanda kutip, contoh :
<?php
$txt1 = "Hello World";
$txt2 = "1234";
$nama = "Desrizal";
echo $txt1."-".$txt2 ; //Hasilnya Hello World-1234
echo "Nama saya : $nama"; //hasilnya Nama saya : Desrizal
?>
5. Operator di PHP
Operator Aritmatika
Contoh :
<?php
$x = 10;
$y = 4;
$a = $x + $y;
echo $a."<br>"; //hasilnya 14
$b = $x - $y;
echo $b."<br>"; //hasilnya 6
$c = $x * $y;
echo $c."<br>"; //hasilnya 40
$d = $x / $y;
echo $d."<br>"; //hasilnya 2.5
$e = $x % $y;
echo $e."<br>"; //hasilnya 2
?>
Operator Pembanding
Operator Deskripsi
== Sama dengan
!= Tidak sama dengan
> Lebih besar dari
< Lebih kecil dari
>= Lebih besar sama dengan
<= Lebih kecil sama dengan
Contoh :
<?php
$x = 10;
Operator Logikal
Operator Deskripsi
&& Dan
|| Atau
! Bukan
Contoh :
<?php
$x = 10;
$y = 5;
if($x > 8 && $y < 6){
echo "TRUE";
}else{
echo "FALSE";
}
//Hasilnya TRUE
?>
6. Kondisional di PHP
Kondisional berguna untuk mengecek suatu kondisi dan melakukan suatu kode jika kondisi
tersebut benar atau salah.
if
Sintaks :
if(kondisi){
kode yang dijalankan jika benar
}
Contoh :
<?php
$x = 10;
if($x == 10){
echo "Hai Apa kabar";
}
?>
if - else
Sintaks :
if(kondisi){
kode yang dijalankan jika benar
}else{
kode yang dijalankan jika salah
}
Contoh :
<?php
$x = 5;
if($x == 10){
echo "Hai Apa kabar";
}else{
echo "X tidak sama dengan 10";
}
?>
if - else if - else
Sintaks :
if(kondisi 1){
kode yang dijalankan jika kondisi 1 benar
}else if(kondisi 2){
kode yang dijalankan jika kondisi 2 benar
}else if(kondisi 3){
kode yang dijalankan jika kondisi 3 benar
}else{
kode jika salah satu kondisi di atas tidak ada yang benar
}
Contoh :
<?php
$nilai = 80;
switch
Sama seperti if - else if - else, berguna jika membutuhkan kondisi yang banyak
Sintaks :
switch(ekspresi){
case kondisi1 :
kode yang dijalankan jika kondisi1 benar;
break;
case kondisi2 :
kode yang dijalankan jika kondisi2 benar;
break;
case kondisi3 :
kode yang dijalankan jika kondisi3 benar;
break;
}
Contoh :
<?php
$buah = "mangga";
switch ($buah) {
case "apple":
echo "buahnya adalah apple";
break;
case "mangga":
echo "buahnya adalah mangga";
break;
case "jambu":
echo "buahnya adalah jambu";
break;
}
?>
for
Berguna untuk pengulangan yang sudah ditentukan terlebih dahulu awalnya berapa, dijalankan
sampai kondisi bagaimana.
Sintaks :
Contoh :
<?php
for ($i = 1; $i <= 10; $i++) {
echo $i."<br>";
}
?>
while
Berguna untuk menjalankan suatu kode terus menerus selama kondisi bernilai TRUE
Sintaks :
while(kondisi){
kode untuk dijalankan;
}
Contoh :
<?php
$i=1;
while($i<=5)
{
echo "Nomor : " . $i . "<br />";
$i++;
}
?>
foreach
Sintaks :
Contoh :
<?php
$arr = array("satu", "dua", "tiga");
MySQL adalah salah satu jenis database, tempat meletakkan data secara terstruktur berupa tabel-
tabel dan kita bisa melakukan query atau mengolah data tersebut dengan SQL (Structured Query
Languange)
Sintaks :
Contoh :
<?php
$koneksi = mysql_connect("localhost","root","");
if($koneksi){
echo "Koneksi berhasil";
}else{
echo "Gagal";
}
?>
Jika anda telah berhasil koneksi ke MySQL, anda bisa melakukan apapun terhadap database
tersebut tergantung hak-hak anda, anda bisa buat database, buat tabel dan melakukan query
Ketika anda menginstal paket Web Server + PHP + MySQL seperti XAMP atau WAMP anda
akan di beri phpmyadmin, yaitu semacam aplikasi berbasis web untuk mengatur database
MySQL
Misal anda ingin membuat tabel : datakaryawan dengan struktur tabel sebagai berikut :
1. Buka phpmyadmin
2. Pilih database yang anda buat tadi
3. Pada bagian bawah Create new table on database, di textfield Name, masukkan nama
tabel yang ingin dibuat, misal : datakaryawan
4. Pada textfield Number of fields, masukkan jumlah field atau kolom yang ingin dibuat.
misal : 5
5. Klik tombol GO
6. Akan muncul form untuk membuat tabel, seperti berikut :
Selain melalui phpmyadmin, kita juga bisa membuat tabel langsung melalui PHP, dimana kita
mengeksekusi query CREATE TABLE, contoh :
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
//jalankan query
$buat = mysql_query($query);
if($buat){
echo "Tabel datakaryawan berhasil dibuat";
}else{
echo "Gagal";
}
?>
Pada tutorial sebelumnya kita telah belajar membuat tabel di MySQL. Sekarang mari kita belajar
mengisi tabel tersebut, di mana inputan berasal dari form HTML.
forminput.html
<html>
<head>
<title>Input data</title>
</head>
<body>
<h2>Input Data Karyawan</h2>
<form action="inputdata.php" method="post">
Nama : <br>
<input type="text" name="nama"><p>
Tanggal Lahir :<br>
<input type="text" name="tgl">Format yyyy-mm-dd<p>
Jenis Kelamin :<br>
<select name="kelamin">
<option>Laki-laki</option>
<option>Perempuan</option>
</select>
<p>
Alamat :<br>
<textarea cols="30" rows="5" name="alamat"></textarea><p>
<input type="submit">
</form>
</body>
</html>
Kode di atas adalah kode HTML untuk membuat form inputan, yang nantinya akan kita
masukkan ke database.
Pada tag <form action="inputdata.php" method="post">, action berarti kode PHP yang
akan memproses inputan jika diklik tombol submit. Methode yang digunakan adalah POST.
Secara umum ada 2 metode pengiriman data ke server, yaitu POST dan GET. Bedanya jika
metode GET, parameter akan ditampilkan di URL.
Query INSERT
Query INSERT adalah perintah SQL untuk memasukkan data ke tabel di database MySQL
Sintaks SQL :
Contoh :
Kode di atas adalah SQL, cara menjalankannya melalui PHP adalah dengan menggunakan fungsi
mysql_query(). Untuk lebih jelas kita lihat contoh di bawah :
inputdata.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
if($masuk){
echo "Data berhasil diinput";
}else{
echo "Gagal";
}
?>
Untuk mengambil data dari form HTML dengan metode POST adalah
$_POST['namafield']
Untuk mengambil data dari form HTML dengan metode GET adalah
$_GET['namafield']
htmlspecialchars() berguna untuk mengubah kode HTML < dan > menjadi < dan
> gunanya untuk keamanan, jika ada user yang nakal mengetikkan kode HTML yang
merusak penampilan web kita.
null artinya tidak ada nilai, karena pada saat kita buat create tabel datakaryawan, field
karyawanid diset auto_incerement, artinya akan otomatis berisi nilai integer yang
berurut
Setelah kita belajar bagaimana menginput data dari form ke tabel di database mysql, sekarang
kita belajar mengambil data dari tabel di MySQL. Langkah-langkahnya adalah sebagai berikut :
Sintaks SQL :
Contoh :
Atau, jika ingin memilih seluruh field, gunakan tanda bintang (*)
tampil.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
Untuk mendelete data yang ada di database adalah dengan cara melakukan query DELETE
Sintaks SQL:
Contoh :
Pada contoh tampil di atas, jika anda jalankan akan ada link delete, yang kalau diklik akan
mengarah file delete php, misal : delete.php?no=1
delete.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
Untuk melakukan update database mysql kita harus melakukan query UPDATE
Sintaks SQL :
Contoh :
Oke mari sekarang kita buat program untuk update data karyawan. Pada contoh tampil.php, jika
nama karyawan diklik akan menuju file detail.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
Jika form pada kode diatas diklik, maka akan menjalankan file update.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
if($update){
echo "Data berhasil diupdate";
}else{
echo "gagal";
}
?>
mysql_num_rows
Sintaks :
Parameter :
$result, hasil dari query yang sudah dijalankan.
Contoh :
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
$jumlah = mysql_num_rows($query);
bukutamu.php
<html>
<head><title>Buku Tamu</title></head>
<body>
<font face=arial size=2>
<h2>Buku Tamu</h2>
<form action="isibukutamu.php" method="post">
Nama:<br>
<input type="text" name="nama"><p>
Email:<br>
<input type="text" name="email"><p>
Komentar:<br>
<textarea name="komentar" cols=40 rows=10></textarea>
<p><input type="submit" value="Kirim">
</form>
<hr>
<!---kode PHP untuk menampilkan bukutamu------->
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
isibukutamu.php
<?php
//lakukan koneksi ke MySQL
mysql_connect("localhost","root","");
$nama = htmlspecialchars($_POST['nama']);
$email = htmlspecialchars($_POST['email']);
$komentar = htmlspecialchars($_POST['komentar']);
$waktu = date("H:i d M Y");
//jika user tekan enter atau barisbaru, kasih tag <br>
$komentar = nl2br($komentar);
addslashes
Fungsi : Memberi garis miring atau slash jika ada tanda kutip pada string
Sintaks :
Contoh :
<?php
$str = "Sekarang hari jum'at";
echo addslashes($str);
//Hasilnya : Sekarang hari jum\'at
?>
chr
Sintaks :
Parameter :
Contoh :
<?php
$kode = 81;
$str = chr($kode);
echo "karakter dengan kode ascii $kode adalah $str";
//Hasilnya : karakter dengan kode ascii 81 adalah Q
?>
count_chars
Sintaks :
Parameter :
0 - Menghitung semua karakter dalam bentuk array, walaupun nggak ada di dalam string
1 - Sama seperti 0, tapi hanya yang jumlah frekuensi besar dari 0, artinya hanya karakter
yang ada di dalam string
2 - Sama seperti 0, tapi hanya karakter yang jumlah frekuensinya sama dengan 0
Contoh :
<?php
$data = "Hello World";
Hasilnya :
explode
Fungsi : Membagi string menjadi array berdasarkan string pembatas yang ditentukan
Sintaks :
Parameter :
Contoh :
<?php
$str = 'one|two|three|four';
print_r(explode('|',$str));
Hasilnya :
Array
(
[0] => one
[1] => two
[2] => three
[3] => four
)
Array
(
[0] => one
[1] => two|three|four
)
htmlspecialchars
Fungsi : Mengubah karakter < dan > menjadi < dan >. Ini sangat berguna untuk mencegah
user yang menggunakan tag html ketika menginput data ke website kita, seperti melalui buku
tamu, dan sebagainya.
Sintaks :
Contoh :
<?php
$teks = "<b>hai apa kabar</b>";
echo htmlspecialchars($teks);
?>
implode
Sintaks :
Parameter :
$antara, string atau karakter antara elemen yang akan disatukan, bersifat opsional, bisa diisi atau
tidak
Contoh :
<?php
$array = array('lastname', 'email', 'phone');
$teksbaru = implode("--",$array);
echo $teksbaru;
//hasilnya lastname--email--phone
?>
md5
Fungsi : untuk men-ekripsi string dengan teknik md5, bersifat satu arah, artinya tidak ada fungsi
untuk mengembalikannya/dekripsi. Kecuali kalau pake kode hacking khusus
Sintaks :
Contoh :
<?php
$password = "passwordku";
echo md5($password);
//Hasilnya : 88f200b77cccee4a6e95c383d33e0f22
?>
nl2br
Fungsi : mengubah baris baru (\n) menjadi <br>, berguna jika anda ingin ketika user input di teks
area, kemudian menekan enter. Nah supaya ntar baris baru yang dibuat di teksarea bisa
diampilkan harus diubah \n menjadi <br>
Sintaks :
Contoh :
<?php
$teks = "Hai \n Apakabar";
$teks = nl2br($teks);
echo $teks;
?>
number_format
Sintaks :
$thousands_sep, adalah tanda pembagi ribuan, apakah koma atau titik atau lainnya
Contoh :
<?php
$number = 123564.56;
//Hasil 123,564.56
?>
ord
Fungsi : Menghasilkan nilai ASCII suatu karakter, kebalikan dari fungsi chr()
Sintaks :
Contoh :
<?php
$str = "x";
echo ord($str);
//Hasilnya 120
?>
parse_str
Sintaks :
Parameter :
$str, adalah string yang akan di ubah, anda juga bisa membuat string menjadi variabel seperti
metode GET, contoh : file.php?nama=desrizal&alamat=tembagapura
<?php
$str = "nama=Desrizal&email=drz@desrizal.com";
parse_str($str);
echo $nama; // Hasilnya Desrizal
echo $email; // Hasilnya drz@desrizal.com
parse_str($str, $output);
echo $output['nama']; // Hasilnya Desrizal
echo $output['email'] // Hasilnya drz@desrizal.com
?>
Sintaks :
Contoh :
<?php
print("Hello World");
?>
str_pad
Sintaks
str_pad ( string $input , int $pad_length [, string $pad_string= " " [, int
$pad_type= STR_PAD_RIGHT ]] )
Parameter :
Contoh :
<?php
$input = "Desrizal";
echo str_pad($input, 15)."<br>"; // Hasil "Desrizal
"
echo str_pad($input, 15, "-=", STR_PAD_LEFT)."<br>"; // Hasil "-=-=-=-
Desrizal"
echo str_pad($input, 15, "_", STR_PAD_BOTH)."<br>"; // Hasil
"___Desrizal____"
echo str_pad($input, 15 , "___")."<br>"; // Hasil
"Desrizal_______"
?>
str_repeat
Sintaks :
Parameter :
Contoh :
<?php
echo str_repeat("x", 10);
//hasilnya xxxxxxxxxx
?>
str_replace
Sintaks :
Parameter :
Contoh :
<?php
$str = "Hello Apa kabar";
$str2 = str_replace("a","x",$str,$count);
echo $str2."<br>";
echo $count;
//Hasil : Hello Apx kxbxr
//hasil 3
?>
str_shuffle
Sintaks :
Contoh :
<?php
echo str_shuffle("Desrizal");
str_split
Sintaks :
Contoh :
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 2);
print_r($arr1);
print_r($arr2);
?>
Hasilnya :
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
Array
(
[0] => He
[1] => ll
[2] => o
[3] => Fr
[4] => ie
[5] => nd
)
str_word_count
Sintaks :
Parameter :
$format
Contoh :
<?php
$str = "Budi pergi ke pasar";
echo str_word_count($str);
//hasilnya 4
?>
strip_tags
Sintaks :
Parameter :
Contoh :
<?php
$teks = "<b>Hallo apa kabar</b>";
echo strip_tags($teks);
?>
stripslashes
Sintaks :
Contoh :
<?php
$str = "Sekarang hari jum\'at";
echo stripslashes($str);
// Hasil: Sekarang hari jum'at
?>
strlen
<?php
$str = 'abcdef';
echo strlen($str); // hasil 6
strrev
Sintaks :
Contoh :
<?php
echo strrev("Hello world!"); // Hasil "!dlrow olleH"
?>
substr_replace
Sintaks :
Parameter :
Contoh :
<?php
$teks = "Desrizal";
echo substr_replace($teks, 'bob', 3, 2);
//hasilnya : Desbobzal
?>
substr
Sintaks :
Parameter :
Contoh :
<?php
echo substr("Desrizal", 3)."<br>"; //Hasilnya rizal
echo substr("Desrizal", 3, 2)."<br>"; //Hasilnya ri
echo substr("Desrizal", -3)."<br>"; //Hasilnya zal
echo substr("Desrizal", -3, 2)."<br>"; //Hasilnya za
?>
1. Pendahuluan
Autentikasi adalah suatu mekanisme untuk mengatur hak akses suatu halaman web, biasanya
diawali dengan adanya proses login. Dimana user diminta menginput user id dan password. Jika
berhasil login anda berhak masuk ke suatu halaman, jika tidak..anda tidak akan bisa masuk ke
halaman tersebut
Session adalah sebuah varibel sementara yang diletakkan di server. Di mana PHP bisa
mengambil nilai yang tersimpan di server walaupun kita membuka halaman baru. Biasanya
session akan hilang jika anda menutup browser.
Contoh :
halaman1.php
<?php
session_start();
$_SESSION['namauser'] = "Desrizal";
echo $_SESSION['namauser'];
Catatan :
Kode session_start() harus diletakkan sebelum ada output apapun walaupun hanya spasi, jadi
sebaikanya selalu letakkan di bagian paling atas
Setelah kita me-registerkan variabel $_SESSION, maka untuk mengecek apakah session telah
diregister adalah dengan menggunakan fungsi isset().
Di halaman2.php kita akan cek apakah variabel session telah di register, jika belum kita stop
membuka isi halaman2.php
halaman2.php
<?php
session_start();
if(!isset($_SESSION['namauser'])){
//jika session belum di set/register
die("Anda belum register kan session");
}
<?php
echo $_SESSION['namauser'];
?>
Untuk melihat efeknya antara variabel $_SESSION sudah diregister atau belum, coba anda tutup
browser, lalu buka lagi browsernya, langsung buka halaman halaman2.php. Tanpa membuka
halaman1.php terlebih dahulu
Setelah kita belajar me-register session, maka cara un-register session adalah dengan
menggunakan fungsi unset()
logout.php
<?php
session_start();
unset($_SESSION['namauser']);
?>
Berikut adalah contoh untuk membuat login dan autentikasi dengan session
Saat ini banyak CMS atau juga situs-situs komunitas memiliki multi user, yang mempunyai
tingkatan level yang berbeda-beda juga. Misalnya ada level admin, ada level user, yang
mempunyai hak akses yang berbeda-beda.
1. Buat tabel user di database yang menyimpan data level masing-masing user
2. Ketika login kita simpan level user yang login ke dalam variabel $_SESSION
3. Ketika user masuk ke suatu halaman, cek apakah user sudah login dan cek level user
tersebut
Sekarang mari kita lihat contoh tabel user di database dan kode PHPnya. Misal kita punya
banyak halaman, di mana halaman-halaman tersebut mempunyai hak akses yang berbeda-beda.
Contoh halaman-halaman web yang kita punya :
1 --
2 -- Table structure for table `tabeluser`
3 --
4
5 CREATE TABLE `tabeluser` (
6 `userid` varchar(20) NOT NULL,
7 `password` varchar(50) NOT NULL,
8 `level` varchar(15) NOT NULL,
9 PRIMARY KEY (`userid`)
1
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
0
view plain | print | ?
1 <html>
2 <head><title>Login</title></head>
3 <body>
4 <h2>Halaman Login</h2>
5 <form action="log.php?op=in" method="post">
6 User ID : <input type="text" name="userid"><br>
7 Password : <input type="password" name="psw"><br>
8 <input type="submit" value="Login">
9 </form>
1
</body>
0
1 </html>
1
view plain | print | ?
Pada halaman login di atas terdapat action berupa file log.php
1 <?php
2 session_start();
3 mysql_connect("localhost","root","") or die("Nggak bisa koneksi");
4 mysql_select_db("test");//sesuaikan dengan nama database anda
5
6 $userid = $_POST['userid'];
7 $psw = $_POST['psw'];
8 $op = $_GET['op'];
9
1
if($op=="in"){
0
1 $cek = mysql_query("SELECT * FROM tabeluser WHERE userid='$userid' AND password
1 ='$psw'");
1
if(mysql_num_rows($cek)==1){//jika berhasil akan bernilai 1
2
1
$c = mysql_fetch_array($cek);
3
1
$_SESSION['userid'] = $c['userid'];
4
1
$_SESSION['level'] = $c['level'];
5
1
if($c['level']=="admin"){
6
1
header("location:homeadmin.php");
7
1
}else if($c['level']=="user"){
8
1
header("location:homeuser.php");
9
2
}
0
2
}else{
1
2
die("password salah <a href=\"javascript:history.back()\">kembali</a>");
2
2
}
3
2
}else if($op=="out"){
4
2
unset($_SESSION['userid']);
5
2 unset($_SESSION['level']);
6
2
header("location:index.php");
7
2
}
8
2
?>
9
view plain | print | ?
Pada kode log.php tersebut pertama-tama kita cek ke dalam tabeluser apakah ada userid dan
password yang cocok. Jika ada maka kita set variabel $_SESSION['userid'] dan
$_SESSION['level'], di mana nilai dari variabel session tersebut kita ambil dari database.
Jika level user adalah admin maka langsung kita arahkan ke halaman homeadmin.php. Jika level
user adalah user, maka kita arahlan ke halaman homeuser.php
1 <?php
2 session_start();
3
4 //cek apakah user sudah login
5 if(!isset($_SESSION['userid'])){
6 die("Anda belum login");//jika belum login jangan lanjut..
7 }
8
9 //cek level user
1
if($_SESSION['level']!="admin"){
0
1
die("Anda bukan admin");//jika bukan admin jangan lanjut
1
1
}
2
1
?>
3
1
4
1
<html>
5
1
<head><title>Halaman Admin</title></head>
6
1
<body>
7
1
<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?>
8
1 Menu :
9
2
<a href=halaman1.php>Halaman 1</a> |
0
2
<a href=halaman2.php>Halaman 2</a> |
1
2
<a href=log.php?op=out>Log Out</a>
2
2
3
2
</body>
4
2
</html>
5
view plain | print | ?
Pada kode di atas untuk mengecek apakah user sudah login atau belum adalah dengan
menggunakan kode if(!isset($_SESSION['userid'])), artinya jika user belum login,
yang ditandai dengan telah diset-nya variabel $_SESSION['userid']. Jika ternyata belum
login maka kita stop sampai disitu dengan menggunakan fungsi die().
Jika user ternyata sudah login maka kita cek tingkatan level user. Kode
$_SESSION['level']!="admin") berarti jika level tidak sama dengan admin, maka stop
atau die().
1 <?php
2 session_start();
3
4 //cek apakah user sudah login
5 if(!isset($_SESSION['userid'])){
6 die("Anda belum login");//jika belum login jangan lanjut..
7 }
8
9 //cek level user
1
if($_SESSION['level']!="user"){
0
1
die("Anda bukan user");//jika bukan user jangan lanjut
1
1
}
2
1
?>
3
1
4
1
<html>
5
1
<head><title>Halaman User</title></head>
6
1
<body>
7
1
<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?>
8
1
Menu :
9
2
<a href=halaman2.php>Halaman 2</a> |
0
2
<a href=halaman3.php>Halaman 3</a> |
1
2
<a href=log.php?op=out>Log Out</a>
2
2
3
2
</body>
4
2
</html>
5
view plain | print | ?
halaman1.php
1 <?php
2 session_start();
3
4 //cek apakah user sudah login
5 if(!isset($_SESSION['userid'])){
6 die("Anda belum login");//jika belum login jangan lanjut..
7 }
8
9 //cek level user
1
if($_SESSION['level']!="admin"){
0
1
die("Anda bukan admin");//jika bukan admin jangan lanjut
1
1
}
2
1
?>
3
1
4
1 <html>
5
1
<head><title>Halaman Admin</title></head>
6
1
<body>
7
1
<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?>
8
1
9
2
<h4>Ini Halaman 1</h4>
0
2
1
2
</body>
2
2
</html>
3
view plain | print | ?
halaman2.php
1 <?php
2 session_start();
3
4 //cek apakah user sudah login
5 if(!isset($_SESSION['userid'])){
6 die("Anda belum login");//jika belum login jangan lanjut..
7 }
8
9 //cek level user
1
if($_SESSION['level']!="admin" && $_SESSION['level']!="user"){
0
1
die("Anda bukan admin");//jika bukan admin dan user jangan lanjut
1
1
}
2
1
?>
3
1
4
1
<html>
5
1
<head><title>Halaman Admin dan User</title></head>
6
1
<body>
7
1 <?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?>
8
1
9
2
<h4>Ini Halaman 2</h4>
0
2
1
2
</body>
2
2
</html>
3
view plain | print | ?
halaman3.php
1 <?php
2 session_start();
3
4 //cek apakah user sudah login
5 if(!isset($_SESSION['userid'])){
6 die("Anda belum login");//jika belum login jangan lanjut..
7 }
8
9 //cek level user
1
if($_SESSION['level']!="user"){
0
1
die("Anda bukan user");//jika bukan user jangan lanjut
1
1
}
2
1
?>
3
1
4
1
<html>
5
1
<head><title>Halaman User</title></head>
6
1
<body>
7
1
<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?>
8
1
9
2
<h4>Ini Halaman 3</h4>
0
2
1
2
</body>
2
2
</html>
3
date
Sintaks :
Parameter :
$format, adalah format-format tanggal dan waktu yang ingin ditampilkan, berikut adalah format-
format untuk tanggal dan waktu :
format
karakter Deskripsi Co
Hari/Tangga
--- ---
l
d Tanggal dua digit dalam 1 bulan, jika 1 digit ada nol depannya 01 to 31
D Nama hari dalam 1 minggu, 3 huruf Mon sampai S
j Tanggal dalam 1 bulan, tanpa nol depannya 1 to 31
l Nama hari dalam 1 minggu Sunday sampa
(huruf kecil
format
karakter Deskripsi Co
'L')
1 (untuk Seni
N ISO-8601 angka yang menunjukkan hari (PHP 5.1.0)
Minggu)
S suffix bahasa inggris untuk tanggal, 2 karakter st, nd, rd or th
0 (Untuk Min
w Angka yang menunjukkan hari seminggu
sabtu)
z Tanggal dalam 1 tahun (dimulai dari 0) 0 sampai 365
Minggu --- ---
Contoh: 42 (M
W ISO-8601 nomor minggu dalam 1 tahun, mingguan/week dimulai dari hari Senin
tahun)
Bulan --- ---
F Nama bulan, seperti January atau March January samp
m Angka yang menunjukkan bulan, 2 digit 01 sampai 12
M Nama bulan, 3 huruf Jan sampai D
n Angka yang menunjukkan bulan 1 sampai 12
t Jumlah hari bulan yang ditentukan 28 sampai 31
Tahun --- ---
Y Tahun 4 digit Contoh: 1999
y tahun 2 digit Contoh: 99 at
Waktu --- ---
a Huruf kecil Ante meridiem (am) dan Post meridiem (pm) am atau pm
A Huruf besar Ante meridiem (am) dan Post meridiem (pm) AM atau PM
B Swatch Internet time 000 sampai 9
g Format 12 jam, tanpa 0 1 sampai 12
G Format 24 jam, tanpa 0 0 sampai 23
h Format 12 jam, 2 digit, dengan 0 depannya 01 sampai 12
H Format 24 jam, 2 digit, dengan 0 depannya 00 sampai 23
format
karakter Deskripsi Co
i Menit 00 sampai 59
s Detik 00 sampai 59
u Microseconds (PHP 5.2.2) Contoh: 5432
Timezone --- ---
Contoh: UTC
e Pengidentifikasi Timezone (PHP 5.1.0)
Atlantic/Azore
O perbedaan terhadap waktu Greenwich (GMT) dalam jam Contoh: +020
perbedaan terhadap waktu Greenwich (GMT) dalam jam ada titik dua antara jam
P Contoh: +02:
dan menit (PHP 5.1.3)
T Singkatan Timezone Contoh: EST,
Full
--- ---
Date/Time
c Tanggal ISO 8601 (PHP 5) 2004-02-12T1
Contoh: Thu,
r Format tanggal RFC 2822
+0200
Contoh :
<?php
// Misal sekarang adalah tanggal 10 Maret, 2001, 5:16:18 pm
getdate
Sintaks :
Parameter :
$timestamp, adalah timestamp UNIX (integer), jika dikosongkan akan mengambil waktu saat ini.
Contoh :
<?php
$today = getdate();
print_r($today);
?>
Hasilnya :
Array
(
[seconds] => 11
[minutes] => 25
[hours] => 21
[mday] => 29
[wday] => 5
[mon] => 10
[year] => 2010
[yday] => 301
[weekday] => Friday
[month] => October
[0] => 1288358711
)
mktime
Fungsi : Mendapatkan timestamp Unix untuk suatu tanggal
Sintaks :
Contoh :
<?php
echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 13, 1, 1997))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 98))."<br>";
Contoh 2 :
<?php
$besok = mktime(0, 0, 0, date("m") , date("d")+1, date("Y"));
$bulankemaren = mktime(0, 0, 0, date("m")-1, date("d"), date("Y"));
$tahundepan = mktime(0, 0, 0, date("m"), date("d"), date("Y")+1);
strtotime
Sintaks :
Contoh :
<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?>
time
Sintaks :
time ( void )
Contoh :
<?php
$minggudepan = time() + (7 * 24 * 60 * 60);
// 7 hari; 24 jam; 60 menit; 60 detik
echo 'Sekarang: '. date('Y-m-d') ."\n<br>";
echo 'Minggu Depan: '. date('Y-m-d', $minggudepan) ."\n<br>";
// atau menggunakan strtotime():
echo 'Minggu Depan: '. date('Y-m-d', strtotime('+1 week')) ."\n<br>";
?>
Hasilnya :
Sekarang: 2010-10-29
Minggu Depan: 2010-11-05
Minggu Depan: 2010-11-05
7. Upload File
1. Upload Dengan Metode POST
2. Multiple Upload File
MAX_FILE_SIZE berfungsi untuk mengatur ukuran maksimal yang diterima PHP (dalam bytes)
upload.php
<?php
$uploaddir = './';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File berhasil diupload.\n";
} else {
echo "gagal!\n";
}
?>
Di server, untuk menangani variabel dari input bertipe file adalah $_FILES, yang berupa array,
informasi yang didapat dari $_FILES adalah :
$_FILES['userfile']['name']
Nama asli file dari komputer client.
$_FILES['userfile']['type']
Informasi tipe file, contoh "image/gif".
$_FILES['userfile']['size']
Ukuran file yang diupload (dalam bytes).
$_FILES['userfile']['tmp_name']
Nama file sementara dari file yang diupload yang diletakkan di server
$_FILES['userfile']['error']
Error kode yang berhubungan dengan penanganan file
NB:
Kalau kita masuk ke halaman depan twitter.com, maka akan kita lihat semacam berita dinding
yang menampilkan status atau berita terbaru dari para twitter. Berita terbaru tersebut ditampilkan
secara scrolling, kemudian menngunakan efek fade in. Pada artikel kali ini kita akan belajar
membuat seperti itu, dimana pada program kita kali ini, kita akan menampilkan lima berita
terbaru secara scolling dan fade in (dari pudar mejadi jelas). Kemudian program kita secara
periodik akan mengecek ke database, jika ada berita terbaru, maka akan langsung kita update di
berita dinding.
Sekarang mari kita lihat algoritma dan kode dari program ini.
Algoritma
Untuk mengetahui atau belajar tentang jQuery Ajax dan efek-efek jQuery, silahkan download
dan baca bukunya
Kode Lengkapnya
<html>
<head>
<title>Berita dinding seperti twitter</title>
<style>
body{background-color:#93C9FF;font-family:verdana;font-size:10pt}
#papan{width:600;height:300;border:#efefef 1px solid;
background-color:white;overflow:hidden}
.p{background-color:white;height:70;text-align:left;
border-bottom:#cdcdcd 1px solid;padding:5}
.x{background-color:white;height:70;text-align:left;
border-bottom:#cdcdcd 1px solid;display:none;padding:5}
a{color:#306DA3;text-decoration:none}
</style>
function putar(){
if(jumlah>4){ //kita putar atau scroll jika jumlah
berita lebih dari 4
$("#papan").prepend("<div id=drz"+i+" class=x><span
id=s"+i+">"+brt[rotasi]+"<br></span></div>");
$("#s"+i).hide();
$("#drz"+i).slideDown(400); //fungsi untuk melakuan scrolldown
$("#s"+i).fadeIn(3000); //fungdi untuk menampilkan berita secara
fade in
rotasi--;
i++;
if(rotasi<=(jumlah - 5)){
rotasi = jumlah;
}
}
var waktuputar = setTimeout("putar()",4000);
}
</script>
</head>
<body>
<center>
<br>
<div id=papan>
<?php
include "koneksi.php";
$i = 1;
<?php
include "koneksi.php";
$a = $_GET['akhir'];
while($b = mysql_fetch_array($berita)){
echo $b[0]."||";
echo "<img src='".$b['photo']."' align=left><b><a href=#>".
$b['nama']."</a></b> ";
echo "<font size=1>".$b['waktu']."</font><br>".$b['berita']."<br>\n";
}
?>
NB:
Untung MS Excel mendukung tipe data XML jadinya kita bisa membuat atau mengkespor report
dalam bentuk excel, di mana datanya berasal dari database MySQL kemudian melakukan
formatting excel, seperti mengatur tipe tulisan, tipe data, border, lebar kolom dan lain-lain.
Selain itu di sini kita akan belajar bagaimana mengekspor atau membuat report MS Excel dalam
multi sheet.
Sekarang kita pelajari bagaimana format XML untuk MS Excel dan memadukannya dengan PHP
MySQL.
Untuk menyatakan bahwa dokumen yang akan kita hasilkan adalah XML untuk MS Office
Excel, kita melakukan deklarasi XML, berikut kodenya :
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
Sama halnya seperti membuat halaman web dengan HTML dan CSS. Pada XML untuk Excel
juga bisa kita atur style yang berguna untuk mengatur format cell-cell pada MS Excel. Style pada
XML Excel diletakkan diantara tag <Styles></Styles>, contoh :
<Styles>
<Style ss:ID="kepala">
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11"
ss:Color="#000000"
ss:Bold="1"/>
<Interior ss:Color="#FF0000" ss:Pattern="Solid"/>
</Style>
<Style ss:ID="badan">
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
</Style>
</Styles>
Sama halnya seperti CSS, kita bisa membuat class-class style, yang nantinya bisa digunakan
suatu elemen HTML. Nah pada XML MS Excel, untuk membuat class-class style, yang nantinya
akan digunakan oleh cell MS Excel.
Untuk membuat sheet-sheet pada MS Excel menggunakan XML adalah sebagai berikut :
<Worksheet ss:Name="Laki-laki">
--Disini akan kita buat tabel untuk laki-laki
</Worksheet>
<Worksheet ss:Name="Perempuan">
--Disini akan kita buat tabel untuk perempuan
</Worksheet>
Bentuk dan struktur pepmbuatan tabel XML MS Excel mirip dengan struktur tabel HTML :
<Table>
<Row>
<Cell ss:StyleID="kepala"><Data ss:Type="String">NIP</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Nama</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Email</Data></Cell>
</Row>
<Row>
<Cell ss:StyleID="badan"><Data ss:Type="Number">123456</Data></Cell>
<Cell ss:StyleID="badan"><Data ss:Type="String">Desrizal</Data></Cell>
<Cell ss:StyleID="badan"><Data
ss:Type="String">Desrizal@fmi.com</Data></Cell>
</Row>
<Row>
<Cell ss:StyleID="badan"><Data ss:Type="Number">234563</Data></Cell>
<Cell ss:StyleID="badan"><Data ss:Type="String">Budi</Data></Cell>
<Cell ss:StyleID="badan"><Data
ss:Type="String">Budi@yahoo.com</Data></Cell>
</Row>
</Table>
ss:StyleID : berguna untuk mengatur format cell tersebut mengacu kepada class style
yang telah kita buat di atas
<Data> : Tempat kita menuliskan data-data
ss:Type : adalah tipe data yang ada pada MS Excel
Untuk mengatur lebar kolom atau cell adalah dengan tag <Column> yang di letakkan pas di
bawah tag <Table>, contoh :
<Table>
<Column ss:Index="2" ss:Width="72"/>
<Column ss:Index="3" ss:Width="200"/>
<Row>
<Cell ss:StyleID="kepala"><Data ss:Type="String">NIP</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Nama</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Email</Data></Cell>
</Row>
</Table>
ss:Index : Index kolom, kalau 2 artinya kolom nomor 2 atau kolom B di Excel
ss:Width : Ukuran lebar kolom
Sekarang mari kita buat kode lengkapnya, bagaimana mengimplementaskan kode XML diatas.
Di sini kita akan membuat kode PHP yang mengambil data dari database MySQL dan
memasukkannya ke Excel.
<?php
mysql_connect("localhost","root","");
mysql_select_db("databaseku");
$namafile = "laporan.xls";
header("Content-Type: application/xls");;
header("Content-Disposition: attachment;filename=".$namafile." ");
?>
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
<WindowHeight>8385</WindowHeight>
<WindowWidth>18975</WindowWidth>
<WindowTopX>120</WindowTopX>
<WindowTopY>120</WindowTopY>
<ProtectStructure>False</ProtectStructure>
<ProtectWindows>False</ProtectWindows>
</ExcelWorkbook>
<Styles>
<Style ss:ID="kepala">
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
<Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11"
ss:Color="#000000"
ss:Bold="1"/>
<Interior ss:Color="#FF0000" ss:Pattern="Solid"/>
</Style>
<Style ss:ID="badan">
<Borders>
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
</Borders>
</Style>
</Styles>
<Worksheet ss:Name="Laki-laki">
<Table>
<Column ss:Index="2" ss:Width="72"/>
<Column ss:Index="3" ss:Width="200"/>
<Row>
<Cell ss:StyleID="kepala"><Data ss:Type="String">NIP</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Nama</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Email</Data></Cell>
</Row>
<?php
$datalaki = mysql_query("SELECT * FROM datapegawai WHERE kelamin='Laki-
laki'");
while($d = mysql_fetch_array($datalaki)){
echo "<Row>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"Number\">".
$d['nip']."</Data></Cell>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"String\">".
$d['nama']."</Data></Cell>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"String\">".
$d['email']."</Data></Cell>
</Row>\n";
}
?>
</Table>
</Worksheet>
<Worksheet ss:Name="Perempuan">
<Table>
<Column ss:Index="2" ss:Width="100"/>
<Column ss:Index="3" ss:Width="200"/>
<Row>
<Cell ss:StyleID="kepala"><Data ss:Type="String">NIP</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Nama</Data></Cell>
<Cell ss:StyleID="kepala"><Data ss:Type="String">Email</Data></Cell>
</Row>
<?php
$dataperempuan = mysql_query("SELECT * FROM datapegawai WHERE
kelamin='Perempuan'");
while($e = mysql_fetch_array($dataperempuan)){
echo "<Row>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"Number\">".
$e['nip']."</Data></Cell>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"String\">".
$e['nama']."</Data></Cell>
<Cell ss:StyleID=\"badan\"><Data ss:Type=\"String\">".
$e['email']."</Data></Cell>
</Row>\n";
}
?>
</Table>
</Worksheet>
</Workbook>
NB:
Saat ini hampir semua website menyediakan feature polling untuk berinteraksi dengan usernya.
Mari kita lihat bagaimana cara membuat polling yang dinamis dengan menggunakan PHP dan
MySQL. Pada program polling ini kita bisa memilih jumlah option jawaban dari pertanyaan
polling kita, selain itu juga kita bisa meng-arsipkan polling-poling yang telah kita buat
sebelumya dan melihat hasilnya.
Pertama-pertama mari kita buat dua buah tabel di database, yaitu tabel polling_pertanyaan dan
polling jawaban.
1 --
2 -- Table structure for table `polling_pertanyaan`
3 --
4
5 CREATE TABLE `polling_pertanyaan` (
6 `idtanya` int(5) NOT NULL auto_increment,
7 `pertanyaan` tinytext NOT NULL,
8 `tanggal` date NOT NULL,
9 PRIMARY KEY (`idtanya`)
1
);
0
1
1
1
CREATE TABLE `polling_jawaban` (
2
1
`nomor` int(5) NOT NULL auto_increment,
3
1 `idtanya` int(5) NOT NULL,
4
1
`jawaban` tinytext NOT NULL,
5
1
`jumlah` int(5) NOT NULL,
6
1
PRIMARY KEY (`nomor`)
7
1
);
8
view plain | print | ?
Sekarang mari kita buat halaman web untuk membuat polling tersebut
polling.html
1 <script>
2 function proses(){
3 var teks = "";
4 j = document.getElementById("jumlah").selectedIndex;
5 for(i=1;i<=j;i++){
6 teks = teks + "Option " + i + " <input type=text name=jawaban[] size=50><br>";
7 }
8 document.getElementById("opt").innerHTML = teks;
9 }
1
</script>
0
1
1
1
<form method="POST" action="inputpolling.php">
2
1
Pertanyaan Polling :<br>
3
1
<textarea rows="3" name="tanya" cols="36"></textarea><p>
4
1
<p>Jumlah Jawaban : <select size="1" name="jumlah" id=jumlah onchange=proses()>
5
1
<option>0</option>
6
1
<option>1</option>
7
1
<option>2</option>
8
1
<option>3</option>
9
2 <option>4</option>
0
2
<option>5</option>
1
2
<option>6</option>
2
2
<option>7</option>
3
2
<option>8</option>
4
2
<option>9</option>
5
2
</select></p>
6
2
<div id=opt></div>
7
2
<p><input type="submit" value="Submit"></p>
8
2
</form>
9
view plain | print | ?
1 <?php
2 mysql_connect("localhost","root","");
3 mysql_select_db("test");
4
5 $tanya = $_POST['tanya'];
6 $tny = mysql_query("INSERT INTO polling_pertanyaan VALUES(null,'$tanya',NOW())");
7
$pertanyaan = mysql_query("SELECT idtanya FROM polling_pertanyaan ORDER BY idtany
8
a DESC LIMIT 1");
9 $t = mysql_fetch_array($pertanyaan);
1
$idtanya = $t['idtanya'];
0
1
1
1
foreach($_POST['jawaban'] as $value){
2
1 $masuk = mysql_query("INSERT INTO polling_jawaban VALUES(null,
3 $idtanya,'$value',0)");
1
}
4
1
5
1
if($masuk){
6
1
echo "<a href=lihatpolling.php>Lihat Polling</a>";
7
1
}else{
8
1
echo "gagal";
9
2
}
0
2
?>
1
view plain | print | ?
1 <?php
2 mysql_connect("localhost","root","");
3 mysql_select_db("test");
4 ?>
5 <html>
6 <head>
7 <title>Polling Management</title>
8 <style>
9 td.poll{background-color:#efefef;font-family:arial;font-size:10pt}
1
</style>
0
1
</head>
1
1
<body>
2
1
<form action=hitungpolling.php method=post>
3
1
<table border=0 width=250 cellpadding=4 cellspacing=3>
4
1
<?php
5
1
$arsip = 0;
6
1
if(isset($_GET['no'])){
7
1
$arsip = 1;
8
1
//jika ini adalah arsip, maka idtanya kita ambil nilainya dari variabel $_GET['no']
9
2
$idtanya = $_GET['no'];
0
2 $polling = mysql_query("SELECT * FROM polling_pertanyaan WHERE idtanya=$idtanya"
1 );
2
while($p = mysql_fetch_array($polling)){
2
2
echo "<tr><td colspan=2 class=poll>".$p['pertanyaan']."</td></tr>";
3
2
}
4
2
}else{
5
2
//jika bukan menampilkan arsip, idtanya kita ambil yang terakhir
6
2 $polling = mysql_query("SELECT * FROM polling_pertanyaan ORDER BY idtanya DESC
7 LIMIT 1");
2
while($p = mysql_fetch_array($polling)){
8
2
echo "<tr><td colspan=2 class=poll>".$p['pertanyaan']."</td></tr>";
9
3
$idtanya = $p['idtanya'];
0
3
}
1
3
}
2
3
3
3
$jawaban = mysql_query("SELECT * FROM polling_jawaban WHERE idtanya=$idtanya");
4
3
while($j = mysql_fetch_array($jawaban)){
5
3
$jawab[] = $j['jawaban'];
6
3
$nomor[] = $j['nomor'];
7
3
$jumlah[] = $j['jumlah'];
8
3
$total = $total + $j['jumlah'];
9
4
}
0
4
1
4
for($i=0;$i<count($nomor);$i++){
2
4
if($jumlah[$i]>0){
3
4
$persen = sprintf("%01.1f",($jumlah[$i]/$total)*100);
4
4
}else{
5
4
$persen = 0;
6
4
}
7
4
if($arsip==1){//kalau hanya menampilkan arsip polling sebelumnya tidak ada radio button
8
4
echo "<tr><td class=poll>";
9
5
}else{
0
5
echo "<tr><td class=poll><input type=radio name=jwb value=".$nomor[$i].">";
1
5
}
2
5
echo $jawab[$i]."</td><td class=poll>".$jumlah[$i]." ($persen%)</td></tr>";
3
5
}
4
5
echo "<tr><td class=poll>TOTAL</td><td class=poll>$total</td></tr></table>";
5
5
if($arsip==0){
6
5
echo "<input type=submit value=Pilih></form>";
7
5
}
8
5
?>
9
6
<h4>Arsip Polling Sebelumnya</h4>
0
6
<ul>
1
6
<?php
2
6 $pol = mysql_query("SELECT * FROM polling_pertanyaan ORDER BY idtanya DESC LIMI
3 T 1");
6
$po = mysql_fetch_array($pol);
4
6
$idakhir = $po['idtanya'];
5
6
echo "<li><a href=lihatpolling.php>".$po['pertanyaan']."</a>";
6
6 $pertanyaan = mysql_query("SELECT * FROM polling_pertanyaan WHERE idtanya < $idakh
7 ir ORDER BY idtanya DESC");
6
while($a = mysql_fetch_array($pertanyaan)){
8
6
echo "<li><a href=lihatpolling.php?no=".$a['idtanya'].">".$a['pertanyaan']."</a>";
9
7
}
0
7
?>
1
7
</ul>
2
7
</body>
3
7
</html>
4
view plain | print | ?
1 <?php
2 mysql_connect("localhost","root","");
3 mysql_select_db("test");
4
5 $jwb = $_POST['jwb'];
6
$masuk = mysql_query("UPDATE polling_jawaban SET jumlah=jumlah+1 WHERE nomor=
7
$jwb");
8 if($masuk){
9 header("location:lihatpolling.php");
1
}else{
0
1
echo "Gagal";
1
1
}
2
1
?>
3
NB:
Setiap artikel atau tulisan pada blog atau situs-situs berita pada saat ini, sudah merupakan feature
wajib adanya tombol share atau bookmark. Tombol share atau bookmark adalah suatu link
supaya kita bisa berbagi atau menandai suatu artikel yang menurut pembaca menarik dan mereka
ingin memberitahukannya ke orang lain melalui situs social networking atau bookmarking
seperti facebook, twitter, dig, delicious dan sebagainya.
Sebenarnya ada banyak situs penyedia membuat tombol ini secara otomatis, seperti addthis.com.
Cukup tempel script yang mereka beri, otomatis akan terbuat sendiri tombol sharenya. Tapi
mungkin kamu-kamu udah bosan dengan tampilannya, atau merasa situs kamu menjadi berat
karena script tersebut.
Berikut adalah cara membuat tombol share menggunakan PHP. Ini merupakan kelanjutan dari
artikel Tutorial URL Rewriting dengan .htaccess dan Penerapannya (Contoh Membuat Blog atau
Situs Berita).
Pertama-tama, download icon-icon tombol share dan bookmark yang lucu dan keren sesuai
keinginan kamu.
berikut adalah format kode untuk membuat tombol share atau bookmarking beberapa situs
facebook.com
<a href="http://www.facebook.com/share.php?u=url_artikel"><img src="gambar_tombol"
border=0></a>
twitter.com
<a href="http://twitter.com/share?url=url_artikel&text=judul><img src="gambar_tombol"
border=0></a>
digg.com
<a href="http://digg.com/submit?phase=2&url=url_artikel"><img src="gambar_tombol"
border=0></a>
delicious.com
<a href="http://del.icio.us/post?url=url_artikel&title=judul"><img src="gambar_tombol"
border=0></a>
Sekarang tinggak kita generate url_artikel dan judul dengan PHP, yang kita ambil dari database
MySQL
selengkapnya.php
<?php
include "koneksi.php";
$id = $_GET['id'];
$berita = mysql_query("SELECT * FROM tabelberita WHERE beritaid=$id");
while($b = mysql_fetch_array($berita)){
$judul = $b['judul'];
echo "<h2>".$b['judul']."</h2>";
echo "<font color=red>".$b['tanggal']." Ketegori: ".
$b['kategori']."<br></font>";
echo $b['pendahuluan']."<p>";
echo $b['lanjutan'];
}
echo "<p>";
$domain = "http://localhost"; //sesuaikan dengan website kamu
$url = $domain.$_SERVER['REQUEST_URI'];
NB:
Membuat emoticon
19:35 10 Jul 2010 @PHP
Kalau kamu chatting menggunakan YM atau menulis suatu artikel di forum , kita sering menulis
kararakter seperti :-) untuk senyum, :-D untuk ketawa dan sebagainya. Ketika kita menulis
kombinasi karakter-karakter tersebut, secara otomatis kombinasi karakter tersebut agar berubah
dalam bentuk gambar.
Nah sekarang saya akan mencoba menerangkan bagaimana pembuatan emoticon tersebut dengan
menggunakan bahasa pemograman PHP.
Prinsip program tersebut adalah mencari kombinasi karakter yang terdapat dalam teks kemudian
mereplace karakter tersebut dengan dengan kode memasukkan gambar melalui tag HTML,
misalnya karakter :-) akan kita ganti dengan <img src=smile.gif>
Pada PHP kita menggunakan regular expression function (Perl-Compatible), suatu metode
pencocokan karakter. Salah satu fungsi yang berguna adalah :
berikut contoh kode PHPnya, kamu juga harus punya file gambar-gambar emoticon seperti
senyum.gif, ketawa.gif dan lainnya
1 <?php
2 //misal ada variabel $pesan yang berisi teks
3 //nilai $pesan bisa dari form atau database
4
5 $pesan = "Halo fren apa kabar :-), katanya udah nikah :-D";
6
7 $cari = array ("':-\)|:\)'", //senyum
8 "':-\(|:\('", //cemberut
9 "':-D'", //ketawa
1
"':-p'i",
0
1
"':-/'i",
1
1
"'8-x'i",
2
1
"':x'i",
3
1
"'dsk'i",
4
1
"'drz'i",
5
1
"'#v'i",
6
1
"'#ok'i",
7
1
"'#x'i",
8
1
"'#love'i",
9
2
"':-%'",
0
2
"'#kdl'i",
1
2
"';-\)|;\)'");
2
2
3
2 $tukar = array ("<img src=senyum.gif>",
4
2
"<img src=cemberut.gif>",
5
2
"<img src=ketawa.gif>",
6
2
"<img src=4.gif>",
7
2
"<img src=5.gif>",
8
2
"<img src=59.gif>",
9
3
"<img src=8.gif>",
0
3
"<img src=yahoo_flower.gif>",
1
3
"<img src=drz.gif>",
2
3
"<img src=yahoo_peace.gif>",
3
3
"<img src=msn_thumbup.gif>",
4
3
"<img src=msn_brheart.gif>",
5
3
"<img src=love.gif>",
6
3
"<img src=yahoo_giggle.gif>",
7
3
"<img src=yahoo_dance.gif>",
8
3
"<img src=6.gif>");
9
4
$pesanubah = preg_replace ($cari, $tukar, $pesan);
0
4
1
4
echo $pesanubah;
2
4
?>
3