0
我想在圖形驗證碼從用戶完整的請求發送到一個網頁,並通過用戶與驗證碼圖像的值進行比較,輸入字符串(這個值存儲在會話值)通過Ajax請求與交變比較會話變量
這是頁面包含Ajax請求(在這裏就不img標籤,但它並不重要!):
<html>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<input id="captcha" maxlength="5" onkeyup="myFunction()" value="">
<script>
function myFunction() {
var x = document.getElementById("captcha");
if(x.value.length==5){
$(document).ready(function(){
$.get("test.php",
function(data, status){
alert("Data: " + data + "\nStatus: " + status);
});
});
}
}
</script>
</body>
</html>
,這頁是得到POST請求:
<?php
session_start();
$c=$_POST['captcha']; echo $c;echo gettype($c);
$s=$_SESSION['captcha']; echo $s;echo gettype($s);
if($c==$s) {
echo 'correct';
} else {
echo 'incorrect';
}
?>
但在回答:類型的會話變量是NULL
!爲什麼?!
但是post變量的類型是字符串,但我確定session和post是相等的。
現在如何與一起比較?
您需要更新名爲'myFunction'的函數,並且需要遵循實際的ajax請求系統... –