如何在Javascript函数中嵌入PHP?

时间:2014-06-10 17:28:40

标签: javascript php validation cakephp captcha

我正在尝试将CAPTCHA选项添加到网站上的特定页面。页面的验证代码用Javascript编写,PHP CAPTCHA文档(http://www.phpcaptcha.org/documentation/quickstart-guide/)严格用PHP表示。我已设法将CAPTCHA框添加到页面以及其他所有内容,直到代码验证用户的CAPTCHA条目。我在合并两者时遇到了麻烦,因为:

a)它们用不同的语言编写 b)我对PHP / Javascript的了解非常基础

以下是该网页原始验证码的摘要:

function validate(formData, jqForm, options){

    // # Valid?
    valid = false;

    // # Validate Contact Form
    var errs = new Array();

    // # Contact Name
    if($('#ContactName').val() == ''){
        errs.push(['#ContactName', 'Enter your name.']);
    } else if(label = $('#ContactNameLabel label.error-message')){
        label.fadeOut();
    }

除了用户的CAPTCHA条目之外,我想重复相同的过程。 PHP CAPTCHA文档中给出了以下代码:

include_once $_SERVER['DOCUMENT_ROOT'] . '/securimage/securimage.php';

$securimage = new Securimage();

if ($securimage->check($_POST['captcha_code']) == false) {
    // the code was incorrect
    // you should handle the error so that the form processor doesn't continue

    // or you can use the following code if there is no validation or you do not know how
    echo "The security code entered was incorrect.<br /><br />";
    echo "Please go <a href='javascript:history.go(-1)'>back</a> and try again.";
    exit;
}

可以在上面给出的链接中找到代码以及说明。我的问题是:如何在我拥有的Javascript函数中实现给定的PHP代码?根据我的理解,只要论坛是使用PHP编写的,就可以在PHP中嵌入PHP(我可以确认我正在使用CakePHP构建的网站) - 我只是迷失了语法/如何执行此操作(如果可能的话)。

如果有人能帮助我,我将不胜感激!先感谢您。

2 个答案:

答案 0 :(得分:1)

如果JavaScript在View中(而不是在.js文件中),您可以在JavaScript中编写PHP

示例:

<?php
$message = "Hello World";
?>

<script>
    alert("<?php echo $message; ?>");
</script>

答案 1 :(得分:0)

你不能这样做,因为PHP是服务器端语言而Javascript是客户端语言。当浏览器看到页面时,服务器上的所有PHP处理都已完成,剩下的就是页面的客户端呈现。您需要在服务器端验证CAPTCHA。