0
我有一個已經運行的表單,即將數據插入數據庫,我也有4個圖像文件輸入,表單然後添加所有數據,上傳圖像並重命名圖像以匹配下一個ID並將隨機結尾添加到文件名。php表單上傳並保留圖像然後插入數據庫
爲intented
,但我現在需要的文件名(一個或多個)被添加到數據庫的所有作品,有時形式將有1個imaghe有時4倍的圖像,但林不知道如何將文件名存儲在數據庫從下面的代碼。誰能幫忙?我認爲這個數組需要被分解成單獨的文件名,但不知道如何去做。
<?php
if(isset($_POST['submit'])){
// Variables for date&Time logs
$dateLog = date("y-m-d"); // DATE OF ADDITION
$timeLog = date("H:i:s", time() - 3600); // TIME OF ADDITION
// INSERT QUERY
$sql="INSERT INTO $table1 (firstname, lastname, companyname, phone, email, name, make, serial, catagory, price, location, description, sold, operational, year, clear, rip, version, service, dock, loading, available, extras, dateadded, featured)
VALUES ('$_POST[firstname]','$_POST[lastname]','$_POST[companyname]','$dateLog','No')";
$query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());
// start of image upload
$insert_id = mysql_insert_id() or die("Unable to get insert id for image name.<br>" . mysql_error());
extract($_POST);
$error=array();
$extension=array("jpeg","jpg","png","gif");
foreach($_FILES["files"]["tmp_name"] as $key=>$tmp_name)
{
$file_name=$_FILES["files"]["name"][$key];
$file_tmp=$_FILES["files"]["tmp_name"][$key];
$ext=pathinfo($file_name,PATHINFO_EXTENSION);
if(in_array($ext,$extension))
{
if(!file_exists("../images/listings/".$txtGalleryName."/".$file_name))
{
$filename=basename($file_name,$ext);
$newFileName=$insert_id."_".mt_rand(1, 99999).".".$ext;
move_uploaded_file($file_tmp=$_FILES["files"]["tmp_name"][$key],"../images/listings/".$txtGalleryName."/".$newFileName);
}
else
{
$filename=basename($file_name,$ext);
$newFileName=$filename.mt_rand(1, 99999).".".$ext;
move_uploaded_file($file_tmp=$_FILES["files"]["tmp_name"][$key],"../images/listings/".$txtGalleryName."/".$newFileName);
}
}
else
{
array_push($error,"$file_name, ");
}
}
// end of image upload
echo '<p>This item was added successfully</p>';
}
?>
和我的表格;
1: Upload : <input type="file" name="files[]"/><br />
2: Upload : <input type="file" name="files[]"/><br />
3: Upload : <input type="file" name="files[]"/><br />
4: Upload : <input type="file" name="files[]"/><br />
感謝所有幫助:)
會這樣做循環中的每個文件? –
通過在循環內執行此操作,所有圖像將被重命名...新名稱將像6個隨機數字加上您的文件的原始名稱...如果您上傳abc.jpg,則新名稱將類似於121122abc .jpg .. 6個隨機數字前置。 – Poria
以及如何將這個添加到數據庫?作爲一個數組>? –