У меня есть переменная captcha из ввода в моей форме.
В моем файле JavaScript у меня есть это:
var captcha = $("input#captcha").val();
$.ajax({
type: "GET",
url: "includes/process.php",
data: captcha,
success: function() {
alert('Captcha is OK');
}
});
В моем файле process.php у меня есть это:
<?php
// Begin the session
session_start();
// To avoid case conflicts, make the input uppercase and check against the session value
// If it's correct, echo '1' as a string
if(strtoupper($_GET['captcha']) == $_SESSION['captcha_id'])
echo 'true';
// Else echo '0' as a string
else
echo 'false';
?>
И моя проблема в том, что он всегда проходит нормально, независимо от того, что я ввожу на ввод. Как я могу, например, Вернитесь к моему файлу, содержащему JavaScript, значение captcha_id , чтобы я мог проверить его, например. использовать оповещение в JavaScript?
Я думаю, что мой php-файл неправильный, потому что независимо от того, что я печатаю в мою капчу (я проверил это с помощью alert (captcha); после var captcha = $ ("input # captcha"). Val (); и это предупреждает правильное значение.
Итак, я предполагаю, что успех: ... часть ошибочна
или
часть сравнения php в process.php. Что нужно вернуть для успешного выполнения части ajx?
Спасибо за любой совет.
решено! хотя бы для меня;)
Это работает для меня:
$.ajax({
type: "GET",
url: "includes/process.php",
data: "captcha=" + captcha,
success:function(data){
if(data=='true')
alert("OK");
else
alert("not ok");
}
});
process.php остается нетронутым.
Спасибо вам всем, вы мне очень помогли.