可以在 php 文件中获取 Ajax 发送的变量



我在PHP文件中定义了我的表单如下(使用jquery-2.1.4.min.js(:

<form id = "testForm" action="" method="post" >
    First name: <input type="text" name="FirstName" id="FirstName" value="Mickey"><br>
    Last name: <input type="text" name="LastName" id="LastName" value="Mouse"><br>
    <button type = "button" onclick="submit()">Submit Top Test </button>
</form>

单击按钮时将调用以下函数。

function submit(){  
        var firstName = $('#FirstName').val();
        alert("Inside SubmitQuery  "+firstName);// Work fine
        var request = $.ajax({
                url: 'php/<path to php file>/processPost.php',
                type:'POST',
                data:{title:firstName},
                success: function(msg) {  
                     alert(msg);// I can see the var_dumps here
                 }
                });
    }   

processPost.php文件中,我定义了以下两个var_dumps

1( var_dump(isset($_POST['title']((;

2( var_dump(_POST美元(;

我可以看到在alert(msg)窗口中打印的值。在开发人员工具窗口的"Network"选项卡的"Response"选项卡中也是如此。但是我想有这些变量在processPost.php文件中可用,以便我可以使用它向 Web 服务调用发出 curl 请求。是否可以将这些变量放在processPost.php文件中?

我的意思是,你基本上在你的问题中回答了你自己的问题。您拥有此文件的事实:

进程发布.php:

<?php
    var_dump( $_POST['title'] );
?>

并且您的success: function(msg){ alert(msg); }正在正确提醒"Coder"(或您提交的任何名称(字面意思是变量$_POST['title']在您的processPost.php文件中可用。如果alert(msg)什么也没给你,或者一个错误,那么你就会知道出了什么问题。

success: function(msg)意味着,如果成功,从url(在本例中为 processPost.php(获取输出值,并将其作为名为 msg 的变量提供给您的 javascript 。

是的,你已经有了。

仔细看看这里发生了什么。您正在向 php 文件发出 Ajax 请求。该文件处理 $_POST 变量并使用 var_dump() 输出它。由于来自jQuery,因此响应返回到jQuery。您已使用alert()来显示该消息。

在你的 php 脚本中,你可以使用 $_POST['title'] 来创建你的 curl 请求。

请注意对输入进行消毒或验证,以免产生注射孔。不要接受用户输入并直接运行它。

相关内容

  • 没有找到相关文章

最新更新