![](/img/trans.png)
[英]Uploading and storing an image in Laravel 5.8 image not storing in database or file path
[英]Uploading an image to a file storing details in database but it overwrites the image already uploaded
我一直在使用圖像上傳器將圖像上傳到文件中,以將詳細信息保存在數據庫中,問題是在我下次上傳圖像時上傳一個圖像后,它會覆蓋當前上傳的圖像。 我也試圖用新的圖像名稱存儲新圖像,但它似乎只是將其存儲為“ .jpg”。 這是我的過程代碼;
<?php
//Parser for Add Photo Form
if (isset($_POST["subject"], $_POST["content"], $_POST["imageName"])){
$subject = mysqli_real_escape_string ($con, ($_POST["subject"]));
$content = mysqli_real_escape_string ($con, ($_POST["content"]));
$imageName = mysqli_real_escape_string ($con, ($_POST["imageName"]));
$latitude = mysqli_real_escape_string ($con, ($_POST["latitude"]));
$longitude = mysqli_real_escape_string ($con, ($_POST["longitude"]));
//add photo to db
$sql = mysqli_query($con, "
INSERT INTO
Blog (
subject,
content,
imageName,
latitude,
longitude,
datetime
)VALUES(
'$subject',
'$content',
'$imageName',
'$latitude',
'$longitude',
NOW())")
or die(mysqli_error($con));
$pid = mysqli_insert_id();
$newName = "$pid.jpg";
move_uploaded_file($_FILES['fileField']['tmp_name'],"blogPhotos/$newName");
header("location: datauploadprocess.php");
exit();
}
?>
用這個 。 它現在可以正常工作。(我假設您的表有一個自動生成的id字段。)
$pid = mysqli_insert_id($con);
嘗試改變
$newName = "$pid.jpg";
至
$newName = $pid . ".jpg";
不得不將mysqli_insert_id()更改為mysqli_insert_ID($ con),初始代碼為mysql_insert_id(),您無需添加連接。 我也忘記將ID更改為ID以匹配我的數據庫名稱。
$pid = mysqli_insert_ID($con);
$newName = "$pid.jpg";
move_uploaded_file($_FILES['fileField']['tmp_name'],"blogPhotos/$newName");
header("location: datauploadprocess.php");
exit();
}
感謝幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.