Php 如何将每个图像名称保存在单独的db列中
请帮我 它是一个多文件上传;但每个img名称将保存在同一列中,。。。 但我想将每个img名称保存在不同的列中,->img_v1、img_v2等 但是我不知道怎么爆炸它Php 如何将每个图像名称保存在单独的db列中,php,image,upload,Php,Image,Upload,请帮我 它是一个多文件上传;但每个img名称将保存在同一列中,。。。 但我想将每个img名称保存在不同的列中,->img_v1、img_v2等 但是我不知道怎么爆炸它 if ($_FILES["user_files"]["name"][$i] <> "") { $image_mime = strtolower(image_type_to_mime_type(exif_imagetype($_FILES["user_files"]["tmp_name"][$i])));
if ($_FILES["user_files"]["name"][$i] <> "") {
$image_mime = strtolower(image_type_to_mime_type(exif_imagetype($_FILES["user_files"]["tmp_name"][$i])));
// if valid image type then upload
if (in_array($image_mime, $valid_image_check)) {
$ext = explode("/", strtolower($image_mime));
$ext = strtolower(end($ext));
$filename = rand(10000, 990000) . '_' . time() . '.' . $ext;
//$fileNameForSQL .= "'".$filename."',";
//$fileNameForSQL .= "'".$filename."'";
//$fileNameForSQL1 .= $filename;
//$fileNameForSQL2 .= $filename2;
//$fileNameForSQL3 .= $filename3;
//$fileNameForSQL4 .= $filename4;
//$fileNameForSQL5 .= $filename5;
//$fileNameForSQL6 .= $filename6;
// $fileNameForSQL .= $filename;
$filepath = $folderName . $filename;
if (!move_uploaded_file($_FILES["user_files"]["tmp_name"][$i], $filepath)) {
$emsg .= "Failed to upload <strong>" . $_FILES["user_files"]["name"][$i] . "</strong>. <br>";
$counter++;
} else {
$smsg .= "<strong>" . $_FILES["user_files"]["name"][$i] . "</strong> uploaded successfully. <br>";
$magicianObj = new imageLib($filepath);
$magicianObj->resizeImage(250, 200, 'auto', 'crop');
$magicianObj->saveImage($folderName . 'thumb/' . $filename, 100);
/* * ****** insert into database starts ******** */
try {
$stmt->bindValue(":img", $filename);
$stmt->execute();
$result = $stmt->rowCount();
if ($result > 0) {
// file uplaoded successfully.
} else {
// failed to insert into database.
}
} catch (Exception $ex) {
$emsg .= "<strong>" . $ex->getMessage() . "</strong>. <br>";
}
/* * ****** insert into database ends ******** */
}
} else {
$emsg .= "<strong>" . $_FILES["user_files"]["name"][$i] . "</strong> Kein gültiges Bild.<br>";
}
}
if($\u文件[“用户\u文件”][“名称”][$i]“”){
$image_mime=strtolower(image_type_to_mime_type(exif_imagetype($_FILES[“user_FILES”][“tmp_name”][$i]));
//如果图像类型有效,则上载
if(在数组中($image\u mime,$valid\u image\u check)){
$ext=explode(“/”,strtolower($image_mime));
$ext=strtolower(end($ext));
$filename=rand(10000990000)。“'.time().”$ext;
//$fileNameForSQL.=“'.$filename.”,“;
//$fileNameForSQL.=“'.$filename.”;
//$fileNameForSQL1.=$filename;
//$fileNameForSQL2.=$filename2;
//$fileNameForSQL3.=$filename3;
//$fileNameForSQL4.=$filename4;
//$fileNameForSQL5.=$filename5;
//$fileNameForSQL6.=$filename6;
//$fileNameForSQL.=$filename;
$filepath=$folderName.$filename;
如果(!move_上传的_文件($_文件[“用户_文件”][“tmp_名称”][$i],$filepath)){
$emsg.=“未能上载”$\u文件[“用户\u文件”][“名称”][$i]。“
”;
$counter++;
}否则{
$smsg.=“”$\u文件[“用户文件”][“名称”][$i]。“已成功上载。
”;
$OBJ=新的imageLib($filepath);
$OBJ->resizeImage(250200,‘自动’、‘裁剪’);
$魔术师obj->saveImage($folderName.'thumb/'.$filename,100);
/*******插入数据库开始********/
试一试{
$stmt->bindValue($img“,$filename);
$stmt->execute();
$result=$stmt->rowCount();
如果($result>0){
//文件上载成功。
}否则{
//无法插入到数据库中。
}
}捕获(例外$ex){
$emsg.=“”$ex->getMessage()。“
”;
}
/*******插入数据库结束********/
}
}否则{
$emsg.=“”$\u文件[“用户文件”][“名称”][$i]。“Kein gültiges Bild.
”;
}
}
因此,在处理每个文件时,不要插入数据库。移动所有文件,然后执行一次插入。另一方面,像你建议的那样有多个列是一个糟糕的设计。您应该将文件放在子表中,这样您就可以拥有任意数量的文件,而不仅仅是定义了多少列。e、 你有img_1->img_10,但有人需要上传11个文件。“哦,对不起”是的事实上。。。der是不同的tbl_图像。。。但是每个img都有不同的ID。。。我不知道如何选择要输入的文件。。。其中包括IMG。。。