javascript - 使用 ajax 请求调用 .php 文件 - wordpress

标签 javascript php jquery ajax wordpress

我正在尝试从 WordPress 中的 ajax 请求调用 php 文件。我遇到的问题是ajax请求需要php文件的路径。我不确定将该 php 文件放置在我的 WordPress 安装中的何处。此外,这个文件不能内联包含,因为只有当用户决定调用它时我才需要调用这个 php 文件。我现在不使用jquery,但愿意使用它,因为我很确定这只是客户端,因此服务器不必参与。

作为我想做的事情的一个例子,让我们用一个表单来尝试一下。此示例取自http://thisinterestsme.com/ajax-form-submission-php/

我会将其包含在网页中。

<html>
    <head>
        <meta charset="UTF-8">
        <title>Example Ajax PHP Form</title>
    </head>
    <body>

        <form id="my_form_id">
            Your Email Address: <input type="text" id="email" /><br>
            <input type="submit" />
        </form>

        <script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
        <script>
            $(document).ready(function(){
                $('#my_form_id').on('submit', function(e){
                    //Stop the form from submitting itself to the server.
                    e.preventDefault();
                    var email = $('#email').val();
                    $.ajax({
                        type: "POST",
                        url: 'submission.php',
                        data: {email: email},
                        success: function(data){
                            alert(data);
                        }
                    });
                });
            });
        </script>
    </body>
</html>

然后在服务器的其他地方我会有这个文件。问题是我不知道该文件放在哪里,也不知道上面的 ajax 请求的路径是什么。

<?php
$emailAddress = false;
if(isset($_POST['email'])){
    $emailAddress = $_POST['email'];
}

echo 'Received email was: ' . $emailAddress;
?>

最佳答案

假设您有这个 php:

<?php
 $emailAddress = false;
 if(isset($_POST['email'])){
    $emailAddress = $_POST['email'];
 }

 echo 'Received email was: ' . $emailAddress;
?>

您应该将此文件命名为page-submission.php并将其保存在functions.php所在的位置,然后创建一个空白页面名称“submission”。现在,您可以在 ajax 中将此文件称为/submission。

以下是视觉层次结构的工作原理:

enter image description here

关于javascript - 使用 ajax 请求调用 .php 文件 - wordpress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47915953/

相关文章:

javascript - 滚动时如何阻止图像向下移动?

JavaScript RegEx 部分匹配/只返回一组的匹配值

javascript - 如何使 addEventListener 'click' 在具有相同类的两个菜单项上工作

javascript - 从 json 文件加入时添加角色 (autorole)

javascript - 嵌入式视频 - Iframe - YouTube - 不会自动播放

php - 计算酒店房间中所有可能的人员组合

javascript - 如何公开 Flash 对象的 ActionScript 以便用 Javascript 处理它?

php - 减少同一对象的不同类型集合中代码重复的设计模式

javascript - AJAX 以渐进的方式读取数据,而不仅仅是在完成时

javascript - 使用动画将一系列 div 向左移动