smkal-hudasariwangi.sch.idsmkal-hudasariwangi.sch.id/wp-content/uploads/2017/05/... · web...

51
MEMBUAT FORM LOGIN DENGAN TEKNIK SESSION Skrip pertama yang akan dibuat adalah form login untuk reporter,dimana apabila seorang reporter ingin pengisian berita ,maka dia harus melakukan login terlebih dahulu.untuk lebih amanya proses login ini ,maka kita akan menambahkan teknik session ,yaitu teknik penyimpanan variable di server ,dalam pengembanganya nanti bisa ditambahkan teknik enskripsi agar lebih aman. Untuk membuat session,culup mudah ,anda hanya tinggal mendaftarkan suatu variable saja yang akan menjadi session ke server,ada tiga fungsi penting dalam membuat session,yatu: Session_start( );//untuk memulai star Session_register( );//untuk daftarkan session ke server Session_Destroy( );//untuk akhir session Skrip form_login.php <html> <body> <h3>login reporter</h3> <form method=post action=cek_login .php> username: <input type=text name=username><br> password: <input type=password name=password><br> <input type=submit value=login> </ form> </bod y> </htm l> 1

Upload: nguyenkhue

Post on 10-Mar-2018

220 views

Category:

Documents


1 download

TRANSCRIPT

MEMBUAT FORM LOGIN DENGAN TEKNIK SESSION

Skrip pertama yang akan dibuat adalah form login untuk reporter,dimana apabila seorang reporter ingin pengisian berita ,maka dia harus melakukan login terlebih dahulu.untuk lebih amanya proses login ini ,maka kita akan menambahkan teknik session ,yaitu teknik penyimpanan variable di server ,dalam pengembanganya nanti bisa ditambahkan teknik enskripsi agar lebih aman.Untuk membuat session,culup mudah ,anda hanya tinggal mendaftarkan suatu variable saja yang akan menjadi session ke server,ada tiga fungsi penting dalam membuat session,yatu:

Session_start( ); //untuk memulai starSession_register( ); //untuk daftarkan session ke serverSession_Destroy( ); //untuk akhir session

Skrip form_login.php

<html> <body> <h3>login reporter</h3><form method=post action=cek_login .php>username: <input type=text name=username><br>password: <input type=password name=password><br><input type=submit value=login></form> </body> </html>

1

Skip cek_login.php

<?include "koneksi_detik.php";$login=mysql_query("select* from reporter

where username='$username' and password='$password'");

$data =mysql_fetch_array($login);if ($data[username]==$username and$data[password]==$password){ session_start();session_register("namauser");session_register("passuser");$namauser=$data[username];$passuser=$data[password];header("location :form_berita. php");} else{echo "gagal,username &password salah <br>";echo"<A href=form_login. php>ulangi lagi</a>";}?>

Skrip logout.php

<? session_star();session_destroy();echo "anda tlah keluar sistem [LOGOUT]<br><br>";echo"<a href=index.php> ke halaman utama</a>";?>

PENGISIAN BERITA OLEH REPORTER

Apabila proses login benar ,maka reporter tersebut berhak untuk pengisian berita .Yang perludiperhatikan saat pengisian berita adalah data user dan no_kategori ditabel berita harus benarmengacu pada tabelkategori dan reporterSkip from_berita.php

<?session_start();if(!empty ($namauser) and !empty($passuser)) {echo"<h3>input berita</h3><form method=post action=input_berita. php> judul: <input type=text size=60

2

name=judul_berita><br>kategori:<select name=no_kategori><option value=0 selected>--pilih kategori--";//tamoilkan nama2 kategoripada kombo include"koneksi_detik.php";$tampil=mysql_query("select*from kategoriorder by nama_kategori"); while($data=mysql_fetch_array($tampil)){echo"<option value= $data[no_kategori]>$data[nama_kategori]";

}echo"</option></select><br>headline berita: <br><textarea name=headline_beritacols=50 rows=5></textarea><br>isi berita:<br><textarea name=isi_beritacols=60 rows=1 0></textarea><br><input type=submit value=kirim></form>";} else{echo "untuk isi berita,anda harus login<br>";echo "<A href=form_login .php>login</a>";}

?>

Skip input_berita.php

<?session_start();if(!empty ($namauser) and !empty ($passuser)){ $hr=array("minggu","senin","selasa","rabu","kamis","jum'at","sabtu"); $hari_ini=date("w");$hari=$hr($hari_ini);$tgl_berita=date("ymd");

3

$jam_berita=date("H: i:s");

include "koneksi_detik.php";$input=mysql_query("insert intoberita(no_kategori,username,judul_berita, headline_berita,isi_berita,hari,tgl_berita,jam_berita) values('$no_kategori','$namauser','$judul_berita', '$headline_berita','$isi_berita','$hari','$tgl_berita','$jam_berita')";$hasil=mysql_query($input);if($hasil){echo"proses input berita berhaasil<br>";echo"<a href=form_berita. php>isi lagi</a><br>";echo"<a href=lagout.php>lagout</a>";}else {"proses input berita gagal";}} else{echo "untuk isi berita anda harus login dahulu <br>";echo"<a href=form_login .php>login</a>";}?>

4

PHP Looping

Sekarang saya akan mencoba menjelaskan tentang PHP Loopingdi dalam php looping kita dapat menggunakan beberapa fungsi, seperti:

while loops, For Loops, Breaking Out of a Loop, continue Statements.

ok coba kita explain satu persatu

1. While Loops

syntax untuk while loop: while (expression){code toexecute;

}

contoh while loop yang menghitung sampai 10

script

<?php $num = 1;

while ($num <= 10) {print "Number is $num<br />\n"; $num++;

}

print 'Done.'; ?>

script---------

menghasilkan:

Number is 1 Number is 2 Number is 3 Number is 4 Number is 5 Number is 6 Number is 7 Number is 8

5

Number is 9 Number is 10 Done.

script nya akan me-loop sampai 10 dan script $num++ bertambah 1

2. For Loops syntax untuk For Loops adalah

for (initialization expression; test expression; modification expression){ code that is executed;

}

contoh script untuk for loop:

script------------

<?phpfor ($num = 1; $num <= 10; $num++) {

print "Number is $num<br />\n";}?>

script----------

menghasilkan:

Number is 1 Number is 2 Number is 3 Number is 4 Number is 5 Number is 6 Number is 7 Number is 8 Number is 9 Number is 10

3. Menghentikan sebuah Loop contoh

Menghentikan sebuah Loop untuk menghindari Loop:

6

script---------

<?php

$counter = -3;

for (; $counter < 10; $counter++) { // Check for division by zero

if ($counter == 0) {echo "Stopping to avoid zero."; break;

}

echo "1 00/$counter<br />";}

?>

script---------

menghasilkan:

100/-3 100/-2 100/-1 Stopping to avoid division by zero.

*dia akan loop sampai fungsi if dan karena ada script break, maka proses akan berhenti *script ini suatu saat akan berguna "Trust me"

4. continue Statements

penggunaan continue selain break

script------------

<?php

$counter =- 3;

for (; $counter < 10; $counter++) {// Check for division by zeroif ($counter == 0) {

echo "Skipping to avoid zero.<br />"; continue;

}

7

echo "1 00/$counter<br />";}

?>

script---------

menghasilkan:

100/-3 100/-2 100/-1 Skipping to avoid zero.100/1 100/2 100/3 100/4 100/5 100/6 100/7 100/8 100/9

*dia akan loop sampai fungsi if dan karena ada script continue, maka proses akan berhenti mengganti angka 0 menjadiSkipping to avoid zero, lalu looping akan di lanjutkan kembali

*script ini juga suatu saat akan sangat berguna

Seperti judul lagu Linkin Park "What I've Done"? kita telah belajar looping

Strpos Mencari Tahu Dimana PosisiSebuah Karakter

fungsi strpos(); berguna untuk mencari tahu dimana posisi sebuah karakter

strpos($string, "huruf yg akan di cari dalam string");

contoh:<?php$name = 'michael';echo strpos($name, 'e');

8

?>

jawabannya adalah 5,mengapa demikian? karena strpos(); akan menghitung mulai dari "m" sampai huruf yang sudah di tentukan yaitu "e",

cara menghitung strpos(); adalah dari mulai angka 0,

coba anda hitung sekali lagi mulai dari huruf "m" sampai "e" dengan start awal huruf "m" yang dihitung dari 0, hasil nya pasti 5ini menunjukkan bahwa huruf "e" ada di posisi 5

contoh lain:<?php$email1 = "[email protected]"; echo strpos($email1, "planet.com"); ?>

hasilnya adalah 8karena yang di cari adalah sebuah kata "planet.com", maka dia akan menghitung mulai dari "m" sampai di temukannya huruf "p" huruf pertama dari kata "planet.com"

contoh lain:<?php$email1 = "[email protected]";if (strpos($email1, "planet.com")) {echo "ada tulisan planet.com";}else {echo "tidak ada tulisan planet.com";}?>

contoh di atas adalah gabungan dari strpos(); dengan fungsi if, yang dapat berfungsi untuk mengecek eksistensi/ keberadaan, logika dari script di atas adalah:jika dalam string $email1 terdapat huruf "planet.com" maka cetak tulisan "ada tulisan planet.com" sebaliknya jika tidak ada maka cetak tulisan "tidak ada tulisan planet.com"

artikel terkait strpos()

9

Fungsi - fungsi untuk memfilter inputform

28-11-2007 | 12:45:04 | Halaman Ini dibaca 10617 kali

trim() digunakan untuk menghapus spasi di kanan dan kiri teks.htmlentities() digunakan untuk mengkonversi karakter-karakter tertentu dalam tag HTML, emm. .kok ribet ya, pokoknya hasil fungsi ini akan menerjemahkan tag-tag HTML sebagai teks biasa.strip_tags digunakan untuk menghilangkan tag-tag HTML dan PHP dalam sebuah string.

Ketiga fungsi di atas bisa digunakan untuk memfilter input/masukan form pada website kita, misalnya pada form buku tamu. Untuk contoh penggunaannya, siapkan file2 berikut:

1.database

create database db_gb ;use db_gb;

create table guestbook (id int unsigned not null primary key auto _increment, nama varchar(50) not null, email varchar(100) not null, pesan text not null)

2.file koneksi.php<?php$host="localhost"; $uname="root"; $pass=""; $db="db_gb"; $koneksi=mysql _connect ($host, $uname, $pass);mysql _select _db ($db, $koneksi);?>

3.file gb.html<form method="post" action="proses .php">Nama *<br><input type="text" name="nama" size="34"><br> Email *<br><input type="text" name="email" size="34"><br>Pesan *<br><textarea name="pesan" rows="8" cols="40"></textarea><br>*) Wajib diisi <br><input type="reset" value="Reset" name="kosongkan"> <input type=" submit" value="Kirim" name=" kirim"> </form><p><a href="lihatgb.php">[ Lihat Data Tamu ]</a>

4.file proses.php<?phpinclude'koneksi.php';if(isset($_POST['kirim']) && ($_POST['kirim']==='Kirim')){

/*--- filter input dg kombinasi fungsi trim dan strip_tags ---*/$nama=trim(strip _tags ($ _POST [ 'nama'])); $email=trim(strip _tags ($ _POST [ 'email'])); $pesan=trim(strip _tags ($ _POST [ 'pesan']));

/*--- filter input dg kombinasi fungsi trim dan htmlentities ---*/ /*$nama=trim(htmlentities ($ _POST [ 'nama']));$email=trim(htmlentities ($ _POST [ 'email']));

$pesan=trim(htmlentities ($ _POST [ 'pesan']));

10

*/

/* -------------------- tanpa filter -----------------------*//*$nama=$ _POST [ 'nama']; $email=$ _POST [ 'email']; $pesan=$ _POST [ 'pesan']; */

if(($nama=='') || ($email=='') || ($pesan=='')) $error= "Data tidak lengkap.<br>";

if(($nama!='') && ($email!='') && ($pesan!='')){ $queryAddGb=mysql_query("insert into guestbook

values (NULL, '$nama', '$email', '$pesan')");if ($queryAddGb){ echo"<font color=red><b>Guestbook berhasil disimpan</b></font>";

echo"<meta http-equiv=\"refresh\" content=\"2; url=. /gb.html\">"; exit; }else{ echo"<font color=red><b>Data gagal disimpan</b></font>";

echo"<meta http-equiv=\"refresh\" content=\"2; url=. /gb.html\">"; exit; }

}

if(isset($error)){ echo"<font color=red><b>$error</b></font>";

echo"<meta http-equiv=\"refresh\" content=\"2; url=. /gb.html\">"; exit; }

}?>

5. file lihatgb.php<?phpinclude' koneksi .php';$queryGb = mysql _query("select * from guestbook");$jmlGb = mysql _num _rows ($queryGb); if ($jmlGb==0){ echo"Data tamu masih kosong"; } else{ $queryTampil=mysql_query("select * from guestbook order by id desc");

echo"<p>DATA TAMU<p>";while ($dataGb=mysql _fetch_row ($queryTampil))

{ echo"".wordwrap($dataGb[1],70,"<br>",1) ."<br>"; echo"".wordwrap($dataGb[3],85,"<br>",1)." ";

echo"<hr width=60% align=left>"; }}?>

Ok, setelah semua siap mari kita coba menginputkan data buku tamu. Misal :

Percobaan 1Masukkan spasi yang banyak pada semua data nama, email dan pesan. Misal, tekan tombol spasi mpe 100X , he..he.... Hasilnya, akan keluar pesan data tidak lengkap. Mengapa begitu? Karena sebelum divalidasi, inputan spasi akan dihilangkan oleh fungsi trim. Akibatnya data akan kosong dan keluarlah pesan data tidak lengkap

Percobaan 2Masukkan data berikut:Nama : <b><i><u>Phii</u></i></b>Email : [email protected] Pesan : <b><font color=red>Ayo belajar PHP, biar bisa bikin web sendiri</font></b> Setelah berhasil menginputkan data, silahkan klik [ lihat data tamu ]. Hasilnya, tag2

11

HTML akan dilenyapkan. Kenapa bisa hilang? Karena sebelum divalidasi, tag2 HTML akan dilenyapkan oleh fungsi strip_tags, sehingga yang akan tersimpan dalam tabel adalah string yang bersih dari tag2 HTML.

Percobaan 3Jadikan komentar pada bagian script filter yang menggunakan trim dan strip_tags. Lalu, hilangkan komentar pada script filter yang menggunakan trim dan htmlentities. Masukkan data yang sama dengan percobaan 2. Hasilnya, tag2 HTML akan ditampilkan, tapi hanya sebagai teks biasa. Mengapa begitu? Karena sebelum divalidasi, tag2 HTML akan difilter oleh fungsi htmlentities, sehingga hanya akan dibaca sebagia string biasa.

Percobaan 4Jadikan komentar pada bagian script filter yang menggunakan trim dan htmlentities. Kali ini, kita akan menginputkan data tanpa fliter, maka hilangkan komentar pada script tanpa filter. Inputkan data sama seperti percobaan 1. Hasilnya? Lihat sendiriya? Setelah itu inputkan data sama seperti percobaan 2. Hasilnya? Lihat sendiri juga ya.he...he..

Teman2 bisa donlot scriptnya disini

Kesimpulan, ketiga fungsi di atas bisa kita gunakan untuk menyaring atau memfilter masukan terhadap form di web kita, terutama dari pengunjung web kita yang doyan banget nginjek eh. .maksudnya nginject form dengan HTML injection

*) Kalo mo nyoba percobaan 4 dg kode HTML yang bisa digunakan untuk deface, tanyakan saja pada Al-k*) Untuk data email, silahkan ditambahkan sendiri validasinya, kaya?e dah pernah dibahas ma Anggi. Cari sendiri ya

Akhir kata, cukup sekian dulu belajar PHP dari Phii, lain kali ditambah lagi. ?BANYAK JALAN MENUJU ROMA? Mungkin ketiga fungsi PHP yang barusan kita bahas bukan cara satu2 nya untuk memfilter masukan, jika ada temen2 yang mengetahui cara lain, mohon ditambahkan. Terima Kasih?

Redirect Halaman

Redirect halaman secara sederhananya berfungsi untuk mengalihkan halaman yang satu ke halaman yang lain. Biasanya hal ini digunakan untuk mengalihkan ke halaman lain ketika terdapat perbaikan pada site, ataupun ketika melakukan authentikasi, ataupun pengisian database yang dijalankan melalui query menggunakan php ataupun server side scripting yang lain.

Terdapat 2 jenis fungsi redirect halaman ini:

12

Yang pertama itu merupakan meta tag tambahan dari html yang digunakan didalam tag head.

Dan yang kedua adalah fungsi header yang disediakan oleh php.

Redirect halaman ini pun dapat digunakan untuk meredirect user untuk login terlebih dahulu sebelum masuk ke dalam halaman forum ataupun halaman lain yang memerlukan authentikasi login. Dengan catatan perlu ditambahkan satu atau dua buah variable global Request, yang berfungsi untuk menyimpan halaman yang akan dituju ketika selesai authentikasi. Hal tersebut akan saya jelaskan pada artikel selanjutnya untuk redirect kompleks. Untuk saat ini saya hanya menjelaskan pokok dari redirect itu sendiri.

Untuk yang pertama, saya biasa menggunakan untuk meredirect user ketika selesai mengisi guestbook. Sebagai contoh :

<html> <head> <title>isi buku tamu</title><meta http-equiv="refresh" content="3 ;url=http://www.ilmuwebsite.com"></head><body>Terima Kasih telah mengisi guest Book .. .</body></html>

Kita ambil kalimat intinya :<meta http-equiv="refresh" content="3 ;url=http://www.ilmuwebsite.com">

Setelah 3 detik maka anda akan dialihkan ke situs http://www.ilmuwebsite.com.

Untuk yang kedua, fungsi header pada php. Penulis biasa menggunakannya untuk authentikasi. Biasanya dipadukan dengan variable session. Perlu diketahui bahwa fungsi header digunakan sebelum tag html.Sebagai contohnya :

<?phpheader("location: http://www.ilmuwebsite.com"); ?>

Sekilas anda akan dialihkan ke ilmuwebsite.Untuk sesi selanjutnya penulis akan memberikan contoh yang lebih kompleks.

13

Passing By Value VS Passing ByReference

Di sini saya hanya akan melakukan sedikit review untuk mempermudah pemahaman teman2 tentang Passing By Value dan Passing By Reference dengan cara membandingkannya. Start... ;)

passing by value,

secara default, semua nilai yang di-pass masuk atau keluar dari fungsi adalah passing by value, bukan by reference. ini berarti PHP membuat kopian dari nilai original dan nilai kopian itulah yang kita akses dan kita manipulasi, bukan nilai originalnya.

dengan begitu bagaimanapun kita ubah nilai itu, tidak akan mengubah nilai originalnya...

contoh:

<?php

function jumlah($nilai) {

$nilai++;

}

$input=5;

jumlah($input);

echo $input;

?>

Penjelasan:

Pada saat fungsi jumlah dipanggil,

jumlah($input);

14

fungsi tersebut akan memasukkan nilai dari variabel $input kedalam argumennya, jadi disini argumen fungsi jumlah adalah 5 (ini adalah nilai aslinya). selanjutnya PHP meng-copy nilai asli tersebut, kemudian hasil copy-nya digunakan untuk proses manipulasi fungsi, sedangkan nilai yang asli dibiarkan tidak berubah. Proses manipulasinya sbb:

$nilai++;

$nilai = $nilai + 1

$nilai = 5 + 1

$nilai = 6

Untuk output,

echo $input;

nilai variabel $input yang diambil disini adalah nilai variabel aslinya, sehingga hasil manipulasi fungsi tadi tidak dipakai, karena bukan nilai asli. Jadi outputnya adalah 5

Tampilan output:

tetapi apabila menggunakan passing by reference akan bernilai 6.

bagaimana outputnya akan bernilai 6? akan saya jelaskan lebih dahulu tentang passing by reference.

passing by reference,

berbeda dengan passing by value yang bersifat mengkopi, passing by reference memberikan nilai aslinya untuk diakses dan dimanipulasi, dengan contoh yang sama seperti diatas, kita akan modifikasi menjadi mekanisme passing by reference.

Untuk mengubah jadi passing by reference, kita hanya cukup menambahkan operator & pada argumennya.

<?php

15

function jumlah(&$nilai) {

$nilai++;

}

$input=5;

jumlah($input);

echo $input;

?>

Penjelasan:

Sesuai dengan penjelasan passing by reference diatas, nilai yang diakses & dimanipulasi adalah nilai aslinya, dengan begitu hasil manipulasi fungsilah yang gunakan sebagai outputnya, yaitu 6.

Tampilan Outputnya:

Membuat login ala cpanel03-04-2008 | 00:43 :58 | Halaman Ini dibaca 8365 kali

Pernahkan anda melihat tampilan login seperti diatas? Jika pernah, mungkin anda penasaran bagaimana cara membuatnya. Untuk membuat login seperti di atas, Caranya sangatmudah. Kuncinya terletak pada Header. Header dalam PHP mempunyai fungsi yang

16

banyaksekali dan bisa diotak-atik. Baiklah, saya akan menjelaskan cara membuatnya. Buat file dengan nama index.php lalu ketikkan script berikut :

<?phpif (!isset($ _SERVER['PHP _AUTH _USER'])) {header('WWW-Authenticate: Basic realm="Login ala Cpanel"'); echo 'Anda membatalkan login !';exit;} else {echo "Anda memasukkan username {$ _SERVER['PHP _AUTH _USER'] }. ";echo "dan password {$_SERVER['PHP_AUTH_PW'] }."

;}?>

Sedikit penjelasan script diatas :If(!isset artinya jika variabel PHP_AUTH_USER belum/tidak diisi, maka akan tampil kotak dialoglogin. Dan jika diisi, maka akan tampil username dan password yang anda masukkan. Bagaimana ? Cukup mudah bukan ? Selamat membuat login yang kerenDownload sourcenya Disini

Dalam menjalankan script php anda membutuhkan XAMPP Server Console PHP Apache

Menangkap Variabel Post17-04-2008 | 09:08:00 | Halaman Ini dibaca 7760 kali

Halo semua, jumpa lagi dengan Phii. Kali ini, Phii akan membahas bagiamana menangkap variabel post pada form buku tamu sederhana agar ketika pengunjung memasukkan data dan ada beberapa data yang tidak valid, pengunjung web kita tidak perlu mengisi ulang dari awal lagi. Bingung? Kira2 begini, misal pengunjung web kita sudah menulis panjang lebar untuk data pesan, tapi kelupaan nulis data email, padahal data email wajib ditulis. Nah, ketika dikirim, proses akan dibatalkan karana ada data yang tidak lengkap dan akan menampilkan kembali form buku tamu yang kosong. Kasihan kan kalo harus nulis lagi, bisa jadi malah pengunjung web kita males n ga jadi nulis buku tamu. sudah cukup jelas? Oke. . .langsung kita bahas. Mari kita siapkan file2-

17

nya :

databasecreate database db_gb ;use db_gb;create table guestbook (id int unsigned not null primary key auto_increment, nama varchar(50) not null, email varchar(100) not null, pesan text not null);

file koneksi.php<?php$host="localhost"; $uname="root"; $pass=""; $db="db_gb"; $koneksi=mysql_connect($host,$uname,$pass);mysql_select_db($db,$koneksi);?>

file lihatgb.php<?php$queryGb = mysql_query("select * from guestbook"); $jmlGb = mysql_num_rows($queryGb);

if($jmlGb==0){

echo"Data buku tamu masih kosong";} else {$queryTampil=mysql_query("select * from guestbook order by id desc"); echo"<p>DATA BUKU TAMU<p>"; while($dataGb=mysql_fetch_row($queryTampil))

{echo"<b>$dataGb[ 1 ]</b><br>";echo"" .wordwrap($dataGb[3] ,85, "<br>", 1)." ";echo"<hr width=50% align=left>";

}}?>

file gb.php<?phpinclude'koneksi.php';

if(isset($_POST['kirim']) && ($_POST['kirim']=='Kirim')) {

$nama=trim(strip_tags($_POST['nama'])); $email=trim(strip_tags($_POST['email'])); $pesan=trim(strip_tags($_POST['pesan']));

//validasi form

18

if($nama==")$error1 = "<font color=red>&nbsp;&nbsp;&laquo; Nama belum

diisi</font><br>"; if($email==")

$error2= "<font color=red>&nbsp;&nbsp;&laquo; Email belumdiisi</font><br>";

if($pesan==")$error3= "<font color=red>&nbsp;&nbsp;&laquo; Pesan belum

diisi</font><br>"; if($email !=") {

$polaemail = "^.+@.+\..+$"; //nyontek tutorial validasi email yg ditulis b_scorpio :)

$cek=eregi($polaemail,$email);if( ! $cek) {

$error4="<font color=red>&nbsp;&nbsp;&laquo; Pola emailsalah</font>";

}}

//jika semua data validif(($nama!=") && ($email!=") && $cek && ($pesan!=")) {

//simpan data buku tamu$queryAddGb=mysql_query("insert into guestbook values(NULL,'$nama','$email','$pesan')");

if($queryAddGb) //jika query simpan buku tamu berhasil{

//tampilkan pesan berhasilecho"<font color=red><b>Guestbook berhasil disimpan</b></font>"; echo"<meta http-equiv=\"refresh\" content=\"2; url=./gb.php\">";exit;

}else //jika query gagal{

//tampilkan pesan gagalecho"<font color=red><b>Data gagal disimpan</b></font>"; echo"<meta http-equiv=\"refresh\" content=\" 10; url=./gb.html\">";exit;

}}

if(isset($error1) || isset($error2) || isset($error3) || isset($error4)){

//tangkap variabel post untuk menampilkan kembali data yang sudah diisi pada form

$ex_nama=trim(strip_tags($_POST['nama']));

19

$ex_email=trim(strip_tags($_POST['email'])); $ex_pesan=trim(strip_tags($_POST['pesan']));

}}

include'lihatgb.php';

//semua value variabel diset kosong jika belum diisiif(empty($ex_nama)){

$ex_nama=";}if(empty($ex_email)){

$ex_email=";}if(empty($ex_pesan)){

$ex pesan=";}?><p><br><br>FORM BUKU TAMU<form method="post" action="">

Nama *<br><input type="text" name="nama" size="34" value="<?php echo $ex_nama;?>"><?php

if(isset($error1)) //jika data nama kosong{

echo $error1; //tampilkan pesan di samping textbox nama} ?><br>Email *<br><input type="text" name="email" size="34" value="<?php echo

$ex_email;?>"><?phpif(isset($error2)) //jika data email kosong{

echo $error2; //tampilkan pesan d isamping textbox email}if(isset($error4)) //jika data email tidak sesuai dengan pola email{

echo $error4; //tampilkan pesan di samping textbox email} ?><br>Pesan *<br><textarea name="pesan" rows="8" cols="40"><?php echo

$ex_pesan;?></textarea><?phpif(isset($error3)) //jika data pesan kosong{

echo $error3; //tampilkan pesan di samping textarea pesan}?>

20

2

<br>*) Wajib diisi <br><input type="reset" value="Reset" name="kosongkan">

<input type="submit" value="Kirim" name="kirim"> </form>

Mari dicoba :

Jalankan file gb.phpCoba isi beberapa data, misal :data nama : Bolangdata pesan: Aku senang sekali mengunjungi ilmuwebsite.com, karena disini aku bisa belajar web programming. Untuk para staf, cayoo. . .jangan pernah bosan berbagi ilmu, agar semakin banyak anak2 bangsa ini yang pinter web programming. Selalu ditunggu artikel2 barunya, n. .. .tetap semangatttttt!!!

Lalu klik KirimApa yang terjadi? Si Bolang ini lupa ga masukin data email. Alhasil proses simpan buku tamu ditolak karana data email wajib diisi.Disinilah topik bahasan artikel ini berguna. Yuppp. .. .karena variabel yang sudah diisi telah ditangkap pak polisi, eh.. .salah, maksudnya ditangkap oleh variabel ex_nama

dan ex_pesan, maka ketika form buku tamu ditampilkan kembali, data2 yang sudah diisi tidak kosong tapi sudah terisi oleh data yg sebelumnya sudah dimasukkan. Jadi Si Bolang tinggal mengisi data email saja.

Coba masukkan data email : bolang@yahoo, lalu klik KirimAduh..aduhhhh...Si Bolang ini orangnya kurang teliti sama kaya Phii. Jadi ketika disimpan, lagi2 proses ditolak, karena pola email tidak sesuai dengan pola yang sudah ditentukan.Kali ini variabel yang ditangkap tidak hanya nama dan pesan, tapi juga email. Form yang ditampilkan akan menampilkan data2 yang sudah dimasukkan sebelumnya.

Kali ini Si Bolang tidak akan melakukan kesalahan input lagi. Si Bolang menambahkan .com pada data email, sehingga data email menjadi [email protected]. Lalu klik Kirim.Horeeee....Bolang sukses mengisi form buku tamu.

23

Script php-nya silahkan donlot disiniWuah. . .panjang sekalee artikelnya, udah ah. . .sampai di sini dulu artikel dari Phii. Jika ada teman2 yang menemukan cara lain silahkan menghubungi phii di [email protected] atau share di ilmuwebsite.

*) Special thanks 2 --> Aeterna_16Phii dapet trik ini dari temen Phii yang nicknya aeterna. Makasih udah boleh share ilmunya di ilmuwebsite melalui artikel yang Phii tulis. Salam bwt rekan2 team PKTI, crazy6, aeterna_1 6, n angel. Woiii. . .cari proyek lagi yukkkk.. . .udah skaratnih. .hahahah...

*) Salam bwt smua staff --> Anggi, Al-k, Safril, Fadli, Ivan, Ronny, Dr.emi n smua pengunjung setia ilmuwebsite

Membahas Fungsi if - ifelse - else

24-03-2007 | 00:16:54 | Halaman Ini dibaca 6910 kali

Di bagian ini kita akan membahas - Define- PHP Decision Making

Ok kita mulai

- Definedi sini saya akan jelaskan sedikit tentang define: define mirip dengan, "string":<?phpdefine("HELLO", "Hello world!"); echo HELLO;?>

Nanti hasilnya: "Hello world."

- PHP Decision MakingPHP Decision Making yang akan saya jelas kan kali ini adalah yang sering di pakai dalam programing website- if- else- elseif

Penggunaan fungsi "if"Sebagai penalaran "if" anda samakan dengan "jika" Contoh: if (kondisi expresi)

24

{kode anda;}

Contoh Penerapan: <?phpif ($user == b_scorpio){echo "user anda b_scorpio";}?>

Contoh Penerapan untuk user autentifikasi: <?phpif ($user == b_scorpio && $password == 8_5c0rp10){echo "anda berhasil login";}?>

Penggunaan fungsi "else"Sebagai penalaran anda asumsikan "else" sebagai "jika tidak" Contoh:if (kondisi expresi)

{kode anda;

} else

{kode anda;}

Contoh Penerapan: <?phpif ($user == b_scorpio){echo "user anda b_scorpio";} else{echo "anda bukan b_scorpio";}?>

Contoh Penerapan untuk user autentifikasi: <?phpif ($user == b_scorpio && $password == 8_5c0rp10) {

25

echo "anda berhasil login";} else{echo "anda tidak bisa login";}?>

Penggunaan fungsi "elseif""elseif" di gunakan untuk, statment "if" lebih dari satu

Contoh Penerapan untuk user autentifikasi: <?phpif ($user == b_scorpio){echo "anda login sebagai $user";}

elseif ($user == alk){echo "anda login sebagai $user";}

elseif ($user == johan){echo "anda login sebagai $user";}

else{echo "anda tidak bisa login";}?>

26

KERJAKAN SOAL DIBAWAH INI !

1. Sebutkan perangkat yang dibutuhkan untuk bahasa pemrograman MYSQL dan

PHP!

2. Tulis script/perintah untuk mengkoneksikan mysql dengan PHP!

3. Tulis script/perintah untuk memilih database yang digunakan dalam mysql!

4. Jelaskan fungsi dari perintah session_start () !

5. Identifier dalam PHP terdiri dari fungsi, variable dan classes. Aturan dalam identifier yang

diperuntukkan pada PHP adalah :

6. Perhatikan table di bawah ini, merupakan tanda-tanda di dalam PHP. Isilah

masing-masing artinya dari masing-masing tanda.

Tanda Arti

\n

\r

\t

\\

\$

\”

7. Buat script untuk tampilan dibawah, dengan username “susi” password “susa”

8. Buat script untuk tampilan menu ketika anda berhasil login! (tampilan menu bebas)

9. Buat script dengan PHP untuk tampilan browser dibawah ini:

27

Sehingga menghasilkan tampilan dibawah ketika tombol input d klik

10. Buat script dengan PHP untuk tampilan browser dibawah ini:

28

Sehingga menghasilkan tampilan dibawah ketika tombol input d klik

Jawaban dikirim melalui email :

[email protected]

29