0

我的代码与我想做的相反,当我在验证码上输入值或字母以及用户名/名称时,我试图创建一个简单的验证码,如果验证码字母正确,我希望它打印hi $name,you types the correct captcha,如果输入的数据是错误的,我只是想让它打印nooo。我的问题是,当我输入正确的字母或数据时,它的打印 noo 并且当我将其留空而不输入任何数据时,它的打印hi $name,you types the correct captcha

这是我的简单代码

<?php
session_start();
?>
<html>
<head>
<title> captcha test</title>
</head>
<body>
<?php
if(isset($_POST['submit'])){

if (isset($_SESSION['real'])) {
    $real = $_SESSION['real'];
}
$guess = $_POST['captcha'];
$name = $_POST['name'];
$real = "";
if ($real == $guess){

echo "hi $name,you types the correct name";
} 
else {

    echo "Nooo";
}

} else {
?>
<form action= 'index.php' method='post'>
your name:<input type = 'text' name='name' />
<br />
<img src= 'image.php'>  <input type='text' name='captcha' />
<br/>

<input type= 'submit' name='submit' value='go' />
</form>
<?php } ?>
</body>
</html>

我究竟做错了什么?

4

2 回答 2

6

$real在您之前为变量分配了实际值之后,您正在为变量分配一个空白值。

$real = "";

于 2012-12-27T06:49:49.910 回答
1

您在条件检查$real=""之前进行if

于 2012-12-27T06:51:36.977 回答