繁体   English   中英

通过URL将参数传递给php,但是php没有得到它,为什么?

[英]Through URL pass parameter to php, but php doesn't get it, Why?

我创建表并使用ajax传递数据。

这是我的ajax部分,我将参数放在URL中,但是php代码无法读取它。

$.ajax({
        type:"POST",
        url:"system_setting.php?p=add",
        data:"username="+username+"&password="+password+"&nickname="+nickname+"&authority="+authority,
        success:function(data){
            viewData();
        }
    });

我使用$page=isset($_GET['p'])?$_GET['p']:''; 判断参数,但不读取。 请教我该怎么办,谢谢。

使用POST代替,然后在数据中添加p=add代替url

$.ajax({
    type:"POST",
    url:"system_setting.php",
    data:"p=add&username="+username+"&password="+password+"&nickname="+nickname+"&authority="+authority,
    success:function(data){
        viewData();
    }
});

和在PHP

$page=isset($_POST['p'])?$_POST['p']:'';

您只需要使用POST或GET。 工作示例:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
var username="username";
var password="password";
var nickname="nickname";
var authority="authority";


$.ajax({
        type:"POST",
        url:"system_setting.php",
        data:"p=add&username="+username+"&password="+password+"&nickname="+nickname+"&authority="+authority,
        success:function(data){
             alert(data);
        }
    });
</script>

在system_setting.php中

$page=isset($_POST['p'])?$_POST['p']:'';

echo $page;

试试看:

var data = {};
data.username = username;
data.password = password;
data.nickname = nickname;
data.authority = authority; 
data.p = “add”;
$.ajax({
     type:"POST",
     url:"system_setting.php", 
     data: data
 }).done(function(data){
     viewData();
 });

然后,当您需要数据时,请使用$_POST[]例如$_POST['p']

试试这个,ajax参数“ method”用于POST和GET。

    $.ajax({
        method: "POST",
        url: "system_setting.php",
        data: { p:"add", username: "unsername", password: "password", nickname:  "nickname", authority:"authority" },
        success:function(data){
            alert(data);
        }
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM