【发布时间】:2018-05-20 11:11:37
【问题描述】:
我正在研究如何使用 Angular 更新图像并为后台 (PHP) 发送 http 请求,所以一切正常,它会删除旧文件并插入新文件,但问题是当插入数据进入数据库,它显示一个错误。
$rest_json = file_get_contents("php://input");
$_POST = json_decode($rest_json, true);
/*recuperation et affichade de donnée*/
$id = (int)$_REQUEST['id'];
$nom = (string)$_REQUEST['nom'];
$image = $_POST['image'];
echo($id);
echo($nom);
$ok = false;
if (!empty($nom) && !empty($id) && !empty($_FILES["image"]["tmp_name"])) {
/*selectionner et supprimer l'image ancien*/
$query = "SELECT image_ser from etservice WHERE id_service='$id'";
$result = $db->query($query);
if (mysqli_num_rows($result) > 0) {
$res = array();
$res = $result->fetch_all(MYSQLI_ASSOC);
unlink(($res[0]["image_ser"]));
}
/*preparer et inserer la nouvelle image et le nom*/
$filetmp = $_FILES["image"]["tmp_name"];
$tmp_name = $_FILES["image"]["name"];
$filename = md5($tmp_name . time()) . "." . pathinfo($tmp_name, PATHINFO_EXTENSION);
echo($filename);
$filepath = "../assets/img/" . $filename;
move_uploaded_file($filetmp, $filepath);
$query = "UPDATE etservice set nom_service='$nom' AND image_ser='$filepath' WHERE id_service='$id'";
$result = $db->query($query);
if ($result === TRUE) {
$res = "Inserted" . $nom. $id.$filepath;
echo json_encode($res);
} else {
echo json_encode("Error" . $query . "<br>" . $db->error);
}
}
break;
当我尝试插入一个简单的示例进行测试时,这是错误
ErrorUPDATE etservice set nom_service='trompita' AND image_ser='../assets/img/d67a2bcf47122a855dab0dcfc5926c7d.jpg' WHERE id_service='31'
截断不正确的 DOUBLE 值: 'trompita'""
【问题讨论】:
-
能否请您发布您用于更新的数据库表结构?
-
评论里有
-
您是要插入还是要更新?因为根据您的 cmets 您正在尝试插入一个值。 UPDATE 语句用于更新值。您必须使用 INSERT 语句来插入值。
-
我正在尝试移动所需文件夹的图像并将其 url 更新到数据库中
标签: php mysql database truncated