如何使用POST方法将javascript / jQuery变量传递给PHP

How to pass javascript/jQuery variable to PHP using POST method

本问题已经有最佳答案,请猛点这里访问。

这是非常基本的。我要做的就是测量浏览器窗口的HTML宽度,并将数据传递给一个PHP脚本,这样我就可以调整传递给站点的信息。

我把HTML宽度部分放下来了。我只是在使用Ajax将javascript/jquery变量传递给PHP脚本时遇到了问题。

这是javascript/jquery。它是用PHP编写的,以便稍后使用include()函数。

1
2
3
4
5
6
7
8
9
echo
'
    htmlWidth = $("html").width();
    $.ajax({
        type:"POST",
        url:"mobileView.php",
        data:{ width: htmlWidth }
    })
'
;

下面是PHP:

1
2
3
4
5
6
7
8
9
$width = $_POST['width'];
function mobileView(){
    if ($width < 950){
        return true;
    } else{
        return false;
    }
}
mobileView();


以下是可以在文件中运行的代码:

对于PHP部分,应该将值传递给函数并调用该函数。

我想您需要从PHP函数返回返回数据到客户机。然后,对于Ajax部分,您必须捕获返回数据。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?
if(isset($_POST['width'])){
    $width = $_POST['width'];

    function mobileView($width){
        if ($width < 950){
            echo 'true';
        } else{
            echo 'false';
        }
    }
    mobileView($width);

}else{
?>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js">
 
    htmlWidth = $("html").width();
    $.ajax({
        type:"POST",
        url:"mobileView.php",
        data:{ width: htmlWidth },
        success: function(data){
            console.log(data);
        }
    })


<?
};

?>


试试这个。

你的阿贾克斯

1
2
3
4
5
6
7
8
9
htmlWidth = $("html").width();
$.ajax({
    type:"POST",
    url:"mobileView.php",
    data:{ width: htmlWidth, somevar :"yes" },
    success: function(data){
        console.log(data);
    }
})

你的PHP

1
2
3
4
5
6
7
8
9
10
11
12
if(isset($_REQUEST['somevar'])){
     $width = $_POST['width'];

    function mobileView($width){
        if ($width < 950){
            echo 'true';
        } else{
            echo 'false';
        }
    }
    mobileView($width);
}