Php 记录未插入到数据库中,没有任何错误

Php 记录未插入到数据库中,没有任何错误,php,Php,我有android应用程序将图像上传到服务器,并将一些记录保存到数据库中,上传的图像按预期保存在文件夹中,但用于在数据库中保存记录的php语句不起作用,并且没有任何错误显示 我的php脚本 $hostname = "localhost"; $username = "username"; $password = "password"; $dbname = "dbname"; $con = mysqli_connect($hostname,$username,$password,$dbn

我有android应用程序将图像上传到服务器,并将一些记录保存到数据库中,上传的图像按预期保存在文件夹中,但用于在数据库中保存记录的php语句不起作用,并且没有任何错误显示

我的php脚本
$hostname = "localhost";

$username = "username";

$password = "password";

 $dbname = "dbname";

 $con = mysqli_connect($hostname,$username,$password,$dbname);
 if(isset($_POST['image'])){
$image = $_POST['image'];
$name= $_POST['name'];
$type= $_POST['type'];
$desc= $_POST['desc'];
$phone= $_POST['phone'];
$token= $_POST['token'];
$address= $_POST['address'];
upload($_POST['image']);
exit;
}
else{
echo "image_not_in";
exit;
 }
function upload($image){
//create unique image file name based on micro time and date
$now = DateTime::createFromFormat('U.u', microtime(true));
$id = $now->format('YmdHisu');

$upload_folder = "Uploads"; //DO NOT put url (http://example.com/upload)
$path = "$upload_folder/$id.jpeg";

//Cannot use "== true"
if(file_put_contents($path, base64_decode($image)) != false){


   $sql= "INSERT INTO donor(name, donor_phone, donor_type, donor_desc, address, donor_img, token) values('$name', '$type', '$phone', '$desc', '$address', '$path', '$token')";



        $response["success"]=1;
        echo json_encode($response);

  }
 else{

        $response["error"]=2;
        echo json_encode($response);

 }

}
$con->close();
?>

在构建查询之后,您实际上并没有执行它。您需要的是在定义$sql之后添加如下内容:

if (mysqli_query($con, $sql) === TRUE) {
   $response["success"]=1;
   echo json_encode($response);
}
else {
   $response["error"]=2;
   echo json_encode($response);
}

您应该查看php手册。

我看到了一个SQL查询,但您正在使用它做任何事情一些合理的代码缩进将是一个好主意。它帮助我们阅读代码,更重要的是,它将帮助您为自己的利益调试代码。您可能会被要求在几周/几个月内修改此代码,最终您将感谢我。请缩进您的代码,并在整个代码中一致使用。这样做使它更易于阅读/维护。对堆栈溢出上的代码这样做,用户很可能会对您的帖子进行投票,人们也会花时间回答您的问题。选择哪种样式并不重要(尽管对于某些语言,某些样式比其他样式更合适)。但是,选择一个并在单个项目中的所有代码中一致地使用它。