当前位置: 首页 > 知识库问答 >
问题:

在Javascript中调用Php函数[复制]

慕容品
2023-03-14

可能重复:
参考:为什么我的Javascript中的PHP代码不起作用?

我已经研究了好几天了,似乎找不到任何东西可以让我做我需要做的事情。

我试图做的是从Javascript调用另一个文件中的Php函数。我的联系人表单上有一个验证码,还有一个Javascript文件,用于检查表单并在用户遗漏任何内容时提醒用户。我的问题是我不能检查验证码。

        <a href ="#!/Email_Check" class="button1" onclick="$(this).closest('form').submit()"onmouseover="" style="cursor: pointer;"><span></span><strong>Send</strong></a>

这是我调用Javascript和Php的链接

        var nameStr = safe_string(document.getElementById('cf_name').value);
        var emailStr = safe_string(document.getElementById('cf_email').value);
        var messageStr = safe_string(document.getElementById('cf_message').value);

        if(nameStr == "")
        document.getElementById('cf_nameCheck').value = "*Enter your name*";
        else
        document.getElementById('cf_nameCheck').value = "";

        if(emailStr == "" || emailStr.indexOf("@") == -1 || emailStr.indexOf(".") == -1)
        document.getElementById('cf_emailCheck').value = "*Enter a valid email*";
        else
        document.getElementById('cf_emailCheck').value = "";

        if(messageStr == "")
        document.getElementById('cf_messageCheck').value = "*Enter your message*";
        else
        document.getElementById('cf_messageCheck').value = "";  


        document.getElementById('cf_name').value = nameStr;
        document.getElementById('cf_email').value = emailStr;
        document.getElementById('cf_message').value = messageStr;

        if(document.getElementById('cf_nameCheck').value == "")
        if(document.getElementById('cf_emailCheck').value == "")
        if(document.getElementById('cf_messageCheck').value == "")
            open_page('#Email_Succesful');

这是我的Javascript,当href被点击时被调用。它检查名称、电子邮件和消息,然后在必要时在另一个文本字段上显示错误消息。

问题是我无法在不使用Php的情况下检查验证码。

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

        $securimage = new Securimage();
        if ($securimage->check($_POST['captcha_code']))
        {
            $mail_status = mail($mail_to, $subject, $body_message, $headers);
        }

这是我在另一个文件中的Php脚本,它检查验证码是否有效,如果有效,则执行电子邮件。它在链接的onclick事件上被调用。

那么...谁能告诉我如何在Javascript中调用支票?这将允许我检查一个真/假值,并确定是否显示关于验证码的警告消息。

如果没有,有没有其他方法可以做我需要做的事情?是否在Php中显示警告?如果解决方案是使用像Ajax这样的其他东西,请同时发布所需的代码,我也研究了Ajax和其他一些东西,但似乎也无法让它工作。

共有3个答案

邢星波
2023-03-14

现有技术可以抽象出客户机-服务器边界。如果您曾经使用过Java RMI,那么您就可以使用以下其中一种:

  • XML-RPC
  • JSON-RPC(实现)
申高峰
2023-03-14

试试这个(对php文档的Ajax请求

余善
2023-03-14

需要知道这一点:

Javascript(除非指定)是一种“客户端”语言,这意味着它在页面编译并从服务器发送后在客户端浏览器上运行。这意味着代码中没有PHP/ASP,只有HTML

PHP、ASP、JSP是仅在服务器端运行的服务器端语言。

所以要回答您的问题,不,您不能直接让Javascript调用PHP(服务器端)函数,但您可以发布到PHP页面,然后该页面将执行您喜欢的任何函数。

 类似资料:
  • 问题内容: 我想知道是否有可能仅在条件为真时在javascript中调用php函数。例如 有没有这样做的方法。如果是这样,请告诉我。谢谢 问题答案: 不能以上面说明的方式调用PHP函数。但是,您可以使用AJAX调用PHP脚本,代码如下所示。您也可以在这里找到一个简单的示例。让我知道您是否需要进一步澄清 使用jQuery 准系统Javascript替代

  • 问题内容: 有没有办法可以通过JS函数运行php函数? 像这样的东西: 我基本上想运行php函数,当我单击名为“ Test”的href时,它将调用php函数。 问题答案: 本质上,这就是AJAX的作用。页面加载,然后将事件添加到元素。当用户导致事件被触发时(例如,单击某些内容),您的Javascript使用XMLHttpRequest对象将请求发送到服务器。 服务器响应后(大概带有输出),另一个J

  • php版本: 5.4 我定义了一个这样的函数 输出是 如何在的正文中引用。

  • 问题内容: 好的,我知道有人问过这个问题,但是我对PHP和JavaScript还是很陌生,直到我开始寻找这个问题的答案之前,我才听说过Ajax,所以不理解以前的答案。 我正在创建一个站点,该站点本质上是SQL数据库中的一堆视频,它一次显示一个视频,我想要一个下一个和上一个视频按钮。 但是我无法摆脱这种ajax的问题​​,所以我的问题更加简单。 我已经复制了确切的代码, 在我的文件中,我实际上只是对

  • 问题内容: 我在从父页面调用JavaScript函数时遇到问题。这是我的两页: mainPage.html resultFrame.html (我知道不建议这样做,但只能在内部使用IE浏览此页面,我不认为这是问题所在) 当我按下“重置”按钮时,我得到“找到resultFrame”和“找不到resultFrame.Reset”。似乎有对框架的引用,但无法在框架上调用该函数,为什么呢? 问题答案: 采

  • 问题内容: 如何从PHP调用JavaScript函数? 以下代码来自 xyz.html (单击按钮时),它在外部 xyz.js中 调用a 。这将调用wait.php。 和 wait.php 从那里以同样的方式从另一个PHP文件调用代码。 该否则工作正常,但它不会被调用我想要的方式。 问题答案: 就PHP而言(或者实际上,通常是一个Web服务器),HTML页面只不过是一个大字符串而已。 您可以使用P