没有收到从ajax到PHP文件的值

问题描述 投票:-2回答:3

起初这是我的代码:

使用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”有结果,我先试了一下。此函数返回一个数组。 (我这里不能显示这个功能)

我不知道我做错了什么,请看看,它让我发疯。

提前致谢!

javascript php ajax
3个回答
0
投票

action位于$_GET超级全球,id位于$_POST超级全球。

PHP:

if(isset($_GET['action'])){
    print myfunction($_GET['action'],$_POST['id']);
}

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

JS:

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

0
投票

首先在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);

在那之后你必须通过$ POST ['id']获得id


0
投票

更改PHP文件请求

if(isset($_GET['action'])){
    print myfunction($_GET['action'],$_GET['id']);
}

你也可以使用$_REQUEST

© www.soinside.com 2019 - 2024. All rights reserved.