Contact Form PHP Menggunakan Captcha

//lh4.googleusercontent.com/-eAXyxy2JJKA/AAAAAAAAAAI/AAAAAAAAGS4/OHgzqHzCvtQ/s512-c/photo.jpg
August 26, 2018




Kembali lagi bersama kami, kali ini kami akan share bagaimana membuat contact form menggunakan Captcha.



Yang pertama kita harus membuat Kode Php untuk membuat Captcha

Kami membahas kode PHP untuk membuat kode CAPTCHA untuk disimpan dalam variabel session. kami memulai session untuk menyimpan captcha yang dibuat secara dinamis menggunakan fungsi PHP rand (). Kami telah membuat layer target gambar dan menulis kode acak. Gambar captcha JPEG ini akan ditampilkan dalam formulir kontak.

 <?php
session_start();
$random_alpha = md5(rand());
$captcha_code = substr($random_alpha, 0, 6);
$_SESSION["captcha_code"] = $captcha_code;
$target_layer = imagecreatetruecolor(70,30);
$captcha_background = imagecolorallocate($target_layer, 255, 160, 119);
imagefill($target_layer,0,0,$captcha_background);
$captcha_text_color = imagecolorallocate($target_layer, 0, 0, 0);
imagestring($target_layer, 5, 5, 5, $captcha_code, $captcha_text_color);
header("Content-type: image/jpeg");
imagejpeg($target_layer);
?> 

Yang kedua adalah kami membuat form sekaligus membuat perintah kemungkinan adanya kesalahan user memasukkan captcha. Maksudnya adalah Jika kecocokan ditemukan, maka, pengguna diakui sebagai manusia dan informasi pengguna akan diproses dalam file PHP. Jika tidak, pesan kesalahan validasi Captcha akan ditampilkan kepada pengguna. Kode untuk memvalidasi captcha adalah,

 <?php
session_start();
$conn = mysqli_connect("localhost", "root", "", "") or die("Connection Error: " . mysqli_error($conn));

if(count($_POST)>0) {
    if($_POST["captcha_code"]==$_SESSION["captcha_code"]){
        $success_message = "Your message received successfully";
        mysqli_query($conn, "INSERT INTO tblcontact (user_name, user_email,subject,content) VALUES ('" . $_POST['userName']. "', '" . $_POST['userEmail']. "','" . $_POST['subject']. "','" . $_POST['content']. "')");
    }
    else{
        $error_message = "Incorrect Captcha Code";
    }
}
?>
<html>
<head>
    <title>CONTACT FORM USING PHP</title>
    <style>
    body {
       font-family:calibri;
       margin: 100px auto;
       width: 600px;
       padding: 10px;
       border: 1px solid #ccc;

   }
   .demo-error {
       display:inline-block;
       color:#FF0000;
       margin-left:5px;
   }
   .demo-input {
    width: 100%;
    border-radius: 5px;
    border: #CCC 1px solid;
    padding: 10px;
    margin-top: 5px;
}
.demo-btn {
 padding: 10px;
    border-radius: 5px;
    background: #478347;
    border: #325a32 1px solid;
    color: #FFF;
    font-size: 1em;
    width: 100%;
    cursor:pointer;
}
.demo-heading {
 font-size: 1.5em;
    border-bottom: #CCC 1px solid;
    margin-bottom:5px;
}
.demo-table {

    border-radius: 5px;
    padding: 10px;
}
.demo-success {
    margin-top: 5px;
    color: #478347;
    background: #e2ead1;
    padding: 10px;
    border-radius: 5px;
}
.captcha-input {
 background:#FFF url('captcha_code.php') repeat-y;
 padding-left: 85px;
}
</style>
</head>
<body>
    <form name="frmContact" method="post" action="">
        <div class="demo-heading"><center>CONTACT FORM USING PHP</center></div>
        <table border="0" cellpadding="10" cellspacing="1" width="100%" class="demo-table">
            <tr class="tablerow">
                <td width="50%">Name<br/><input type="text" name="userName" class="demo-input"></td>
                <td width="50%">Email<br/><input type="text" name="userEmail" class="demo-input"></td>
            </tr>
            <tr class="tablerow">
                <td colspan="2">Subject<br/><input type="text" name="subject" class="demo-input"></td>
            </tr>
            <tr class="tablerow">
                <td colspan="2">Enter Your Text<br/><textarea name="content" class="demo-input" rows="5"></textarea></td>
            </tr>
            <tr class="tablerow">
                <td>Captcha Code: <div id="error-captcha" class="demo-error"><?php if(isset($error_message)) { echo $error_message; } ?></div><br/>
                    <input name="captcha_code" type="text" class="demo-input captcha-input">
                </td>
                <td><br/><input type="submit" name="submit" value="Submit" class="demo-btn"></td>
            </tr>
        </table>
        <?php if(isset($success_message)) { ?>
            <div class="demo-success"><?php echo $success_message; ?></div>
        <?php } ?>
    </form>
</body></html> 


Sekian share kali ini semoga apa yang kami share bermanfaat bagi anda, jangan lupa share keteman kalian dan jangan segang untuk meninggalkan komentar dan mulai berdiskusi dengan kami.


Related Post

SUBSCRIBE TO OUR NEWSLETTER

closed