我正在尝试检查用户是否在我的文本框中输入的文字名为'有效'等于包含随机生成的6位数字的变量。
$validkey = rand(100000,999999);
我的问题是;在'如果'语句如何检查用户是否在文本框中输入了与$ validkey变量相同的数字?如果检查下一个名为“' next”的按钮,它将被嵌入到一个内容中。已被点击。因此,当单击按钮时,它将进行检查。
我目前的代码如下:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
E-mail: <input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
<br>
<input type="text" name="valid">
<input type="submit" name="next" value="Next">
</form>
<?php
$validkey = rand(100000,999999);
if (isset($_POST["submit"]))// the user has submitted the form
{
if (preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email))
{
if (isset($_POST["email"])) // Check if the "from" input field is filled out
{
$from = "Simon"; // sender
$subject = "Validation Key";
$message = "Your Validation key: ".$validkey." enter this key into the required field to gain access to the Cyber Security Health Check";
$message = wordwrap($message, 70);
mail($_POST["email"],$subject,$message,"From: $from\n");
echo '<span class="success">We have sent a validation key to your email!</span>';
}
}
}
if (isset($_POST["next"]))
{
if ($_POST['valid'] == $validkey)
{
echo '<span class="success">CORRECT!</span>';
}
else
{
echo '<span class="error">INCORRECT!</span>';
}
}
?>
如果我说错了这个问题,或者我没有提供足够的信息,我很抱歉,我有点像PHP新手。
感谢您提前提供任何帮助。
答案 0 :(得分:0)
使用intval
函数解析输入值,然后将其与生成的值进行比较。
答案 1 :(得分:0)
这是什么事吗?
if isset($_REQUEST['next']) { // next has been pressed
if($_REQUEST['textentry'] === $validkey) { // entered text identical to the valid key
// handle correct entry
}
else {
// handle incorrect entry
}
}
else {
// handle some other button being pressed
}
答案 2 :(得分:0)
我不知道它是否有帮助或我理解你的问题
你是否尝试过($ _POST [&#39;有效&#39;] === $ validkey){}
或者您也可以使用jquery Ajax请求,当用户离开文本框时,无需提交下一个按钮,ajax请求将验证,您可以根据该显示消息。
$(document).ready(function(){
$("input[name='valid']").on('blur', function(){
var text = $("input[name='valid']").val();
var data = 'valid=' + text;
$.ajax({
type:"POST",
url:"checkvalidkey.php",
data: data,
success: function(html){
$("p").html(html)
}
})
});
});
答案 3 :(得分:0)
试试这段代码。这是非常基本的代码。进行必要的更改,例如添加表单和所有内容,并根据需要使用它。
<?php $validkey="hello" ?>
<script type="text/javascript">
function check_value()
{
var code = document.getElementById("code").value;
if(code=='<?php echo $validkey; ?>')
{
alert('Matches');
}
}
</script>
<input type ="text" name="code" id="code" />
<button onclick="check_value();">Click</button>
希望这就是你要找的东西。