Praktikum PHP 6

by - 8:45 AM

Assalamu'alaikum .... Lanjut lagi ya teman dengan tugas PHP 6 yang membahas tentang validasi form serta tambahan captcha.
Jadi langsung saja kita ngecoding (lagi) hihi mangaaat! :D

1. Dengan yang pertama tama membuka dreamweaver kita masing masing
2. Kita buat dari script yang terkecil dulu tapi, yang sering bikin eror!
yaitu  captcha. ini ada sempel gambarnya

3. Nah sekarang saatnya kita memasukkan coding captchanya

<?php
session_start(); 
$alphaNumeric = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 
$random = substr(str_shuffle($alphaNumeric), 0, 5); 
$image = imagecreatefromjpeg("ed.jpg"); 
$textColor = imagecolorallocate ($image,50,20,9); //Merah
imagestring ($image, 8, 5, 9, $random, $textColor);  
$_SESSION['image_random_value'] = md5($random); 
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");  
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");  
header("Cache-Control: no-store, no-cache, must-revalidate");  
header("Cache-Control: post-check=0, pre-check=0", false);  
header("Pragma: no-cache");      
header('Content-type: image/jpeg'); 
imagejpeg($image); 
imagedestroy($image); 
?> 

4. Simpan dengan nama captcha.php 


Jika dijalankan hasilnya seperti ini 


5. Sekarang kita buat file baru lagi di dreamweaver 




6. Langsung saja masukkan coding  dibawah 

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<?php
//session_start();
if(isset($_SESSION['error'])){
$error = $_SESSION['error'];
$_POST = $_SESSION['post'];
unset($_SESSION['error']);
unset($_SESSION['POST']);
}
if(empty($nama) || empty($email) || empty($alamat) || empty($kota) || empty($kodePos)){
?>
    <body style="background-image:url(roses.png); background-repeat:repeat;">
    <form name="form-name" method="post" action="action6.php">
    <table cellspacing="0" cellpadding="3" bgcolor="#FEB4A7" border="2" width="700" height="420" style="border-radius:20px;border-color:BLACK;
box-shadow:0 0 5px black; position:fixed;left:350px;top:55px;'>
<tr>
    <table align="center" width="66%" border="0">
    <tr>
     <td rowspan="10" width="210" Style=' border-top-left-radius:20px;border-bottom-left-radius:20px '><center><img src="logo.jpg" width="230" height="300" /></center></td>
        <td colspan="5" bgcolor="#FF3366" Style=' border-top-right-radius:20px; '>
         <center><font color="WHITE">INPUTAN DATA SISWA</font></center>
        </td>
        
    </tr>
    <tr>
    <td width="79">Nama Lengkap</td>
    <td width="3">:</td>
    <td width="144"><input name="nama" id="nama" type="text" value="<?php echo isset($_POST['nama']) ? $_POST['nama'] : '';?>"/><font color=red><?php echo isset($error['nama']) ? $error['nama'] : '';?></font></td>
    </tr>
    <tr>
    <td>Jenis Kelamin</td>
    <td>:</td>
    <td>
        &nbsp;Laki-Laki<input type="radio" name="gender" value="<?php echo isset($_POST['gender']) ? $_POST['gender'] : ''; ?>Laki - Laki <?php echo isset($_POST['gender']) ? ' checked' : ''; ?>"/>
     
            &nbsp;Perempuan<input type="radio"  name=gender value="<?php echo isset($_POST['gender']) ? $_POST['gender'] : ''; ?> Perempuan <?php echo isset($_POST['gender']) ? ' checked' : ''; ?>" />
            <font size="-1" color="red"><?php echo isset($error['gender']) ? $error['gender'] : '';?></font>
     <?php echo isset ($true['gender'])? $true['gender'] : '';?></td>
     <tr>
     <td>TTL</td>
        <td>:</td>
        <td>
    <input type='text' placeholder="Tempat" name="tempat" size="5" value="<?php echo isset($_POST['tempat']) ? $_POST['tempat'] : ''; ?>" />
        <font size="-1"  color="red"><?php echo isset($error['tempat']) ? $error['tempat'] : '';?></font>
<font ><?php echo isset ($true['tempat'])? $true['tempat'] : '';?></font>


<?php
$bulan=array("Januari" ,"Februari", " Maret" ,"April", "Mei", "Juni", 
"Juli", "Agustus", "September", "Oktober", "November", "Desember");



echo '<select name="tanggal" >';
echo "<option value=tanggal>Tanggal</option>";
$tanggal=1;
$tanggalpilih = isset($_POST['tanggal']) ? $_POST['tanggal'] : "tanggal";

while($tanggal<=31) {
echo "<option value=$tanggal";
echo  $tanggal == $tanggalpilih ? " selected" : "";
echo '>'.$tanggal.'</option>';
$tanggal++;
}
echo '</select>'; 

echo '<select name="bulan">'; 
echo "<option value=bulan>Bulan</option>";
$jumlah=count($bulan);
$bulanpilih = isset($_POST['bulan']) ? $_POST['bulan'] : "bulan";
for($i=0; $i<$jumlah ; $i++){
echo "<option value=$bulan[$i]";
echo $bulan[$i] == $bulanpilih ? " selected" : "";
echo '>'.$bulan[$i].'</option>';
}
echo '</select>';


echo '<select name="tahun">';
echo "<option value=tahun>Tahun</option>";
$tahunpilih = isset($_POST['tahun']) ? $_POST['tahun'] : "tahun";
for($tahun=1995; $tahun<2010; $tahun++){
echo "<option value='$tahun'";
echo $tahun == $tahunpilih? " selected" : "";
echo '>'.$tahun.'</option>';
}
echo '</option>';

?>
        </td>
    </tr>
    <tr>
    <td>E-mail</td>
    <td>:</td>
    <td><input name="email" placeholder="E-mail" id="email" type="text" value="<?php echo isset($_POST['email']) ? $_POST['email'] : '';?>"/><font color=red><?php echo isset($error['email']) ? $error['email'] : '';?></font></td>
    </tr>
     <tr>
    <td>Password</td>
    <td>:</td>
    <td><input name="password" id="password" type="password" value="<?php echo isset($_POST['password']) ? $_POST['password'] : '';?>"/><font color=red><?php echo isset($error['password']) ? $error['password'] : '';?></font></td>
    </tr>
     <tr>
    <td>Alamat</td>
    <td>:</td>
    <td><input name="alamat" id="alamat" type="text" value="<?php echo isset($_POST['alamat']) ? $_POST['alamat'] : '';?>"/><font color=red><?php echo isset($error['alamat']) ? $error['alamat'] : '';?></font></td>
    </tr>
    
     <tr>
    <td>NoHP</td>
    <td>:</td>
    <td><input name="no_hp" id="no_hp" type="double" value="<?php echo isset($_POST['no_hp']) ? $_POST['no_hp'] : '';?>"/><font color=red><?php echo isset($error['no_hp']) ? $error['no_hp'] : '';?></font></td>
    </tr>
   </tr>
     <tr>
     <td>Captcha  <img height="30" style="vertical-align:middle;" src="captcha6.php?data=<?php echo date('YmdHis');?> alt="security image" /></td>
        <td></td>
        <td>
        
         <input name="pin" placeholder="Captcha" type="text"  value="<?php echo isset($_POST['captcha']) ? $_POST['captcha'] : ''; ?>" />
           
        <font size="-1" color="blue"><?php echo isset($error['pin']) ? $error['pin'] : '';?></font>
        <font ><?php echo isset ($true['pin'])? $true['pin'] : '';?></font>
        </td>
    </tr>
    <tr>
    
    <td colspan="3" style="border-bottom-right-radius:10px;"><CENTER><input name="submit" id="submit" type="submit" value="submit" /></CENTER></td>
    </tr>
    </table></form>
    <?php }?>
</body>
</html>

7. Save file diatas dengan nama Praktikum6.php 



8. Ketika di live designnya nampak seperti gambar dibawah ini 
   Ini saya kombinasi sama css supaya nampak cantik dilihat dan enak dipandang. hihi :D


9. Selanjutnya coding terakhir yang harus kita buat yaitu actionnya. Nah langsung saja disimpak temaaaans! :D
<?php
session_start();
if ($_POST) {
$nama = $_POST['nama'];
$gender =isset($_POST['gender'])? $_POST['gender']:"";
$tempat = $_POST['tempat'];
$bulan = $_POST['bulan'];
$tanggal = $_POST['tanggal'];
$tahun = $_POST['tahun'];
$email = $_POST['email'];
$password = $_POST['password'];
$no_hp = $_POST['no_hp'];
$alamat = $_POST['alamat'];
$captcha =$_POST['pin'];
$emailPattern = '/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/';
$kodePosPattern = '/^\d{5} ([\-]\d{4})?$/';
$imgTrue ='<img src="images/centang.jpg" style="vertical-align:middle"/><br>';   
$imgErr='<img src=1.png" style="vertical-align:middle" /><br>';
$imgEmp ='<img src="1.PNG" style="vertical-align:middle"/><br>';
$error = array();
if (empty($nama)) {
$error['nama'] = $imgEmp.'nama tidak boleh kososng';
}
if (empty($gender)) {
$error['gender'] = $imgEmp.'jenis kelamin tidak boleh kososng';
} else{
$true['gender'] = $imgTrue;
}
if (empty($tempat)) {
$error['tempat'] = $imgEmp.'TTL tidak boleh kososng';
}
if (empty($email)) {
$error['email'] = $imgErr.'email tidak boleh kososng';
} elseif (!preg_match($emailPattern, $email)) {
$error['email'] = $imgEmp.'email salah penulisan (xxxxxx@xxxxx.xxx)';
}
if (empty($password)) {
$error['password'] = $imgEmp.'password tidak boleh kososng';
}
if (empty($alamat)) {
$error['alamat'] = $imgEmp.'alamat tidak boleh kososng';
}
if (empty($no_hp)) {
$error['no_hp'] = $imgEmp.'no.hp tidak boleh kososng';
}
if(empty ($captcha)){
        $error['pin'] = $imgEmp.'Captcha tidak boleh kosong';
    } elseif (md5($_POST['pin']) <> $_SESSION['image_random_value']){
$error['pin'] = $imgErr.'Anda bukan manusia';
    
    } else {
   $true['pin'] = $imgTrue;
}
if(empty($error)){

if($gender=='Laki - Laki'){
echo'<h2><center><font color="#00FF99"Selamat Datang Saudara, '.$nama.'<br>Berikut Biodatamu></font></center></h2>';
}
else{
echo'<h2><center>Selamat Datang Saudari, '.$nama.'<br>Berikut Biodatamu</center></h2>';
}
print("
<body style='background-image:url(roses.png); background-repeat:repeat;'>
<table  cellspacing='0' cellpadding='4' bgcolor='#FF9999' border='1' width='650' height='300' Style='border-radius:20px;border-color:white; position:fixed;left:360px;top:110px; '>
<tr>
    
        <td colspan='4' bgcolor='#FF6666' Style=' border-top-left-radius:20px; border-top-right-radius:20px'>
         <strong><font color='white'><div class='Da'><center>DATA DIRI</center></div></font></strong>
        </td>
       
    </tr>
    <tr>
     <td> Nama Lengkap </td>
        <td width='1'><center>:</center></td>
        <td> $nama</td>
</tr>
    <tr>
     <td> Jenis Kelamin</td>
        <td><center>:</center></td>
        <td> $gender </td>
    </tr>
  
    <tr>
     <td>TTL</td>
        <td><center>:</center></td>
        <td>$tempat, $tanggal - $bulan - $tahun</td>
    </tr>
    <tr>
     <td>Alamat</td>
        <td><center>:</center></td>
        <td> $alamat</td>
    </tr>
  
    <tr>
     <td>E-mail</td>
        <td><center>:</center></td>
        <td>$email</td>
    </tr>
    <tr>
     <td>Password</td>
        <td><center>:</center></td>
        <td> $password</td>
    </tr>
    <tr>
     <td Style=' border-bottom-left-radius:20px'>No. HP</td>
        <td><center>:</center></td>
        <td>$no_hp</td>
    </tr>
 <tr>
   

</table>
");

}

else{
$_SESSION['error']=$error;
    $_SESSION['true'] =$true;
$_SESSION['post'] =$_POST;
header("location:praktikum6.php");
}
}
?>

10. Semua coding telah kita buat, tinggal kita liat hasinnya *jeng jeng jeng* 


Apabila ada data yang tidak kita inputkan maka hasilnya akan ada peringatan


dan ketika data yang kita inputkan sukses, maka hasilnya seperti gambar dibawah 



Nah! Selesailah sudah praktikum ke 6 ini .. Selamat Mencobaaa! semoga tidak eror eror! amin :))








You May Also Like

0 komentar