Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未收到从ajax到PHP文件的值_Javascript_Php_Ajax - Fatal编程技术网

Javascript 未收到从ajax到PHP文件的值

Javascript 未收到从ajax到PHP文件的值,javascript,php,ajax,Javascript,Php,Ajax,首先,这是我的代码: 带Javascript的HTML: function getValues(){ var filter; $.ajax({ type: "POST", url: "myphpfile.PHP?action=sek", data: "id=1", async: false, success: function(ret){

首先,这是我的代码:

带Javascript的HTML:

function getValues(){
    var filter;
    $.ajax({
            type: "POST",
            url: "myphpfile.PHP?action=sek",
            data: "id=1",
            async: false,
            success: function(ret){
                    filter = ret;
                }
        });
    console.log(filter);
PHP myphpfile.PHP:

if(isset($_GET['action'])){
    print myfunction($_GET['action'],$_GET['id']);
}
我的问题是: 当我尝试用console.log打印结果时,会打印整个myphpfile.php。 据我所知,这意味着没有值到达HTML文件。但是为什么呢

函数myfunction有结果,我先试用过。此函数返回一个数组。我不能在这里显示这个函数

我不明白我做错了什么,请看一看,这让我发疯


提前谢谢

更改PHP文件请求

if(isset($_GET['action'])){
    print myfunction($_GET['action'],$_GET['id']);
}
您还可以在Javascript中首先使用。

function getValues(){
    var filter;
    $.ajax({
            type: "POST",
            url: "myphpfile.PHP?action=sek",
            data: "id=1",
            async: false,
            success: function(ret){
                    filter = ret;
                }
        });
    console.log(filter);
函数getValues{ var滤波器; $.ajax{ 类型:POST,, url:myphpfile.PHP?action=sek, 数据:{id:1}, async:false, 成功:functionret{ 过滤器=ret; } }; console.logfilter;操作位于$\u GET super global中,id位于$\u POST super global中

PHP:

此外,您需要将对象传递给数据参数,而不是字符串:

JS:


首先,您正在使用AJAX发出post请求,然后期望函数中出现get请求!将console.log移到success callback中可能只有“action”的副本将出现在get数组中,而不是“id”。“$\u POS['id']`对$\u post['id]的更改是的。完成,谢谢!
$.ajax({
    type: "POST",
    url: "myphpfile.PHP?action=sek",
    data: {id: "1"},
    async: false,
    success: function(ret){
            filter = ret;
        }
});