使用jquery load调用capcha函数

时间:2015-10-07 17:51:03

标签: javascript php jquery

我正在为我的表单使用capcha,我希望在页面首次加载时将其显示给用户,使用php函数随机生成capcha,是否可以使用jquery load调用该函数并显示它给用户。非常感激任何的帮助。

的index.php

<input type="text" id="capcha" size ="25" placeholder="capcha" />
<span id="random_capcha" src="validate.php" ></span></br></br>

validate.php

<?php
session_start();
include 'display.php';
$first = first();
$second = second(); //returns omg lol;

$_SESSION["captcha_code"] = $captcha_code; $first.' '.' '.' '.$second;

?>

Display.php的

<?php
function first(){ //function parameters, two variables.

$min_number = 1;
$max_number = 15;
$random_number1 = mt_rand($min_number, $max_number);
return $random_number1;
}


function second() {

$min_number = 1;
$max_number = 15;
$random_number2 = mt_rand($min_number, $max_number);

return $random_number2;
}
?>

2 个答案:

答案 0 :(得分:1)

您可以使用AJAX从服务器调用内容并替换为文档元素。

$.ajax({
     url: "/captcha.php",
     context: document.body
}).done(function(data){$("#random_captcha").html(data);});

要验证,您还可以使用AJAX检查答案。

有关$ .ajax()。

的JQuery API文档的更多详细信息

建议:您可以使用图像验证码进行验证。 php_gd&#39;的用途函数在PHP.net上有很好的文档和示例。您使用imagestring功能打印文本。有关https://secure.php.net/manual/en/function.imagecreatetruecolor.php的更多详情。我认为它对机器人最有效。

答案 1 :(得分:0)

您可以将ajax request发送到服务器并将结果插入目标范围。

客户端javascript:

$.get("captcha.php", function(data) {
    //data is your captcha code retrieved from server
    $('#random_captcha').html(data);//insert captcha to target container
});

captcha.php

<?php
//...generating captcha
echo $captcha_code;