ajax修改数据失败?

修改数据错误

数据库代码

create table testing
(
    id               int                  auto_increment     primary key, #id
  username            varchar(300)    not null,
  fwl            varchar(100)    not null,
  num            varchar(100)    not null,
  num1            int    not null,
  num2             int        ,
  num3       int      not NULL
);
INSERT  into testing(username,fwl,num,num1,num2,num3) VALUE ("www.111111111.com",120,200,100,60,40);

前端

function fun(n1,n2,n3,n4,n5,n6,n7){
        var jsonData = {
            "id": n1,
            "fwl": n2,
            "num": n3,
            "num1": n4,
            "num2": n5,
            "num3": n6,
            "only":n7
        };
        console.log(jsonData);
        $.ajax({
            type: 'get',
            url: 'update.php',
            data: jsonData,
            dataType: "json",
            success: function (msg){
                if (msg.status == true) {
                    console.log("修改成功")
                } else {
                    console.log("修改失败");
                }
                console.log(msg.status);
            },
            error: function (error) {
                console.log(error);
            }
        });
    }

php代码

<?php
header("Access-Control-Allow-Origin: *");
header("Content-type:text/html;charset=utf-8");
$url = "mysql:host=localhost;dbname=testing";
$user = "root";
$pwd = "0123456zp";
$conn=new PDO($url,$user,$pwd);
$conn->query("set names utf8");

$id=$_GET['id'];
$fwl=$_GET['fwl'];
$num=$_GET['num'];
$num1=$_GET['num1'];
$num2=$_GET['num2'];
$num3=$_GET['num3'];
$only=$_GET['only'];



$sql="update '$only' set fwl='$fwl',num='$num',num1='$num1',num2='$num2',num3='$num3' where id=$id";

$res=$conn->exec($sql);
if($res){
    echo json_encode(array(
        "status"=>true,
        "info"=>"add success"
    ),JSON_UNESCAPED_UNICODE);
}else{
    echo json_encode(array(
        "status"=>false,
        "info"=>"add error",
        "sql"=>$sql
    ),JSON_UNESCAPED_UNICODE);
}


clipboard.png

前端调试数据都拿到了 求路过大佬给看看为啥修改失败? 谢谢

阅读 1.9k
1 个回答

你现在后台是收不到数据的。
你可以直接调试后天,因为 你传递的数据的一个 json 对象,所以后台用 $_GET 收不到值,需要使用

file_get_contents('php://input')

来接收输入。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题