PHP批量儲存圖片
關於這個問題網上也有回答,我只是把我在工作中用到的程式碼分解出來,供需要的朋友使用。以下程式碼都已經經過測試,所以沒有任何問題。有問題請加QQ:1127173874
第一部分 資料庫表結構
create table sys_houseimg
(
id int identity(1,1) primary key not null,
houseid not null, --房源ID
img null, --圖片地址
cname null, --圖片名稱
fl null, -圖片分類(1、小區圖 2、戶型圖 3、效果圖)
)
go
第二部分 JS程式碼
/******************動態新增檔案*******************/
function addrow1()
{
var i=lines.rows.length ;
var row = biaoge1.insertRow(biaoge1.rows.length);
var col = row.insertCell(0);
col.innerHTML = "<INPUT class='inputbut' id=img1file["+i+"] type='file' name=img1file["+i+"] size='30'> 圖片標題:<input type=text name=cname1s[] id=cname1s[]><a href='javascript:;' onclick=\"delrow1('SignItem" + i + "')\">【刪除】</a>";
}
function tbladdrow1(items)
{
for( i = 1 ; i <= items ; i++)
{
addrow1();
}
}
function delrow1(rowid)
{
if(lines.rows.length==0)
{
return false ;
}
lines.deleteRow(rowid); }
======================================================HTML程式碼顯示
<TABLE id="biaoge2" cellpadding="0" cellspacing="0" border="0" width="100%">
<tbody id="lines2" name="lines2">
</tbody>
</TABLE><br /><INPUT id="addrow" name="addrow" type="button" value="加一張" onclick="addrow2();" class="redbutton">
(最多10張圖片,上傳兩張或多張圖片,即可獲得<img src="../../image/duotu.jpg" border="0" />標識,助您快速出租。)
第三部分 儲存圖片的程式碼
//=====================================批量新增小區圖
$img_dir = "../upfiles/";
$uploaded2 = 0;
$unuploaded2 = 0;
$uploaded3 = 0;
$unuploaded3 = 0;
for ($j=0; $j<=10; $j++) //$j<=10,說明可以上傳10張圖片
{
//獲取當前圖片的資訊
$is_file2 = $_FILES['img1file']['name'][$j];
$filename2=$_FILES['img1file']["tmp_name"][$j];
$pinfo2=pathinfo($_FILES['img1file']["name"][$j]);
$ftype2=$pinfo2[extension];
$destination2 =$j.time().".".$ftype2;
if (!empty($is_file2))
{
// 判斷上傳的圖片的型別是不是jpg,gif,png,bmp中的一種,同時判斷是否上傳成功
if (
$_FILES['img1file']['type'][$j] == "image/pjpeg" ||
$_FILES['img1file']['type'][$j] == "image/gif" ||
$_FILES['img1file']['type'][$j] == "image/x-png" ||
$_FILES['img1file']['type'][$j] == "image/bmp"
)
{
if (!file_exists($destination2))
{
move_uploaded_file($filename2,$img_dir.$destination2);
if(empty($_POST['cname1s'][$j]))
{
$cname2s=$is_file2;
}
else
{
$cname2s=$_POST['cname1s'][$j];
}
$ss2="insert into sys_houseimg(houseid,img,cname,fl)values(".$houseid.",'../upfiles/".$destination2."','".$cname2s."',2)";
$db->query($ss2);
$uploaded2++;
}
}
}
}此方法沒有用到圖片上傳類