在访客留言提交表单中添加验证码

时间:2013-09-26 21:56:12

标签: php forms

我正在尝试在我的留言簿提交表单中添加验证码,但无法获取if(($ _ POST ['code'])==($ _SESSION ['code']))语句。请参阅下面的代码。任何帮助将不胜感激。

if ($_POST['postbtn']){
    $name = strip_tags($_POST['name']);
    $email = strip_tags($_POST['email']);
    $comment = strip_tags($_POST['comment']);
    if(($_POST['code']) == ($_SESSION['code'])) { 
    $code = strip_tags($_POST['code']);
    }

    if($name && $email && $comment && $code){

    $time = date("h:i A");
    $date = date("F d, Y");
    $ip = $_SERVER['REMOTE_ADDR'];

    // add to the database
    mysqli_query($con,"INSERT INTO guestbook VALUES (
        '', '$name', '$email', '$comment', '$time', '$date', '$ip'
    )");

    echo "Your post has been added.";
    }
    else
        echo"You did not enter in all the required info.";
}

echo "<form action='./index.php' method='post'>
<table>
<tr>
    <td>Name:</td>
    <td><input type='text' name='name' style='width: 200px;' /></td>
</tr>
<tr>
    <td>Email:</td>
    <td><input type='text' name='email' style='width: 200px;' /></td>
</tr>
<tr>
    <td>Comment:</td>
    <td><textarea name='comment' style='width: 197.5px; height: 50px;'> 
   </textarea></td>
</tr>
<tr>
    <td><img src='captcha.php?'/></td>
    <td><input type='text' name='code' style='width: 200px;' /></td>
</tr>   
<tr>
    <td></td>
    <td><input type='submit' name='postbtn' value='Post' /></td>
</tr>
</table>
</form>";

1 个答案:

答案 0 :(得分:0)

你可以尝试回显$ _POST ['code']和$ _SESSION ['code'],以便你可以调试它,看看你是否正确获得了值?我认为你没有把它们弄好。如果不只是在这里添加一个完整的场景,其中包含适当的字段名称和值。