如何在数据库中的一行中插入多个文件 [英] How to multiple file insert in one row in database

查看:110
本文介绍了如何在数据库中的一行中插入多个文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建了多个文件表单。但是当我在数据库中插入文件时,它每行都插入了分隔文件。所以我想在一行中插入多个文件。



我尝试了什么:



 $ media_tittle = $ _ POST ['media_tittle']; 

$ extension = array(jpeg,jpg,png);
//总计文件数
$ countfiles = count($ _ FILES ['media_images'] ['name']);

for($ i = 0; $ i< $ countfiles; $ i ++){
$ filename = $ _FILES ['media_images'] ['name'] [$ i];
$ tmp_dir = $ _FILES ['media_images'] ['tmp_name'] [$ i];
$ imgSize = $ _FILES ['media_images'] ['size'] [$ i];

$ namefile = pathinfo($ filename,PATHINFO_FILENAME);
$ ext = pathinfo($ filename,PATHINFO_EXTENSION);

$ counter = 0;

if(empty($ media_tittle)){
$ errMSG = true;
echo请输入标题。;
}
elseif(空($ filename)){
$ errMSG = true;
echo请上传图片。;
}
elseif(in_array($ ext,$ extension)== false){
$ errMSG = true;
echo请上传.jpeg,.jpg,.png格式文件。;
}
elseif($ imgSize> = 500000){
$ errMSG = true;
echo文件太大。文件必须小于500 Kilobytes。;
}
if(!isset($ errMSG)){
list($ b_width,$ b_height)= getimagesize($ tmp_dir);
if($ b_width!= 730 || $ b_height!= 500){
$ errMSG = true;
echo请检查Witdh和Image的高度。;
}
if(!isset($ errMSG)){
while(file_exists(../ media_corner / $ filename)){
$ filename = $ namefile。 $计数器$分机。。
$ counter ++;
}
move_uploaded_file($ tmp_dir,.. / media_corner / $ filename);
// $ filename = $ _FILES ['media_images'] ['name'];
$ result = mysqli_query($ conn,INSERT INTO`media_corner`(`title`,`images`,`status`)VALUES('$ media_tittle','$ filename','N'))或死(无法检索图像:。mysqli_error($ conn));
}
}
}

解决方案

media_tittle =


< blockquote> _POST ['media_tittle'];


extension = array(jpeg,jpg,png);
//计算总文件数


I have created multiple file form. But when i insert files in database it inserted separated file each row.So i want to insert multiple file in one row.

What I have tried:

$media_tittle=$_POST['media_tittle'];	
	
	$extension = array("jpeg","jpg","png");	
	// Count total files
	$countfiles = count($_FILES['media_images']['name']);
	
	for($i=0;$i<$countfiles;$i++){
		$filename = $_FILES['media_images']['name'][$i];
		$tmp_dir = $_FILES['media_images']['tmp_name'][$i];
		$imgSize = $_FILES['media_images']['size'][$i];		
	
		$namefile = pathinfo($filename, PATHINFO_FILENAME);
		$ext = pathinfo($filename, PATHINFO_EXTENSION);		
		
		$counter = 0;
		
		if(empty($media_tittle)){
			$errMSG = true;	
			echo "Please Enter Title.";
		}
		elseif(empty($filename)){
			$errMSG = true;	
			echo "Please Upload Images.";
		}
		elseif(in_array($ext, $extension) == false){
			$errMSG = true;	
			echo "Please Upload .jpeg, .jpg, .png formatted file.";
		}
		elseif($imgSize >= 500000){
			$errMSG = true;	
			echo "File too large. File must be less than 500 Kilobytes.";
		}
		if(!isset($errMSG)){
			list($b_width, $b_height) = getimagesize($tmp_dir);
			if($b_width != 730 || $b_height != 500){
				$errMSG = true;	
				echo "Please check the Witdh and height of Image.";
			}
			if(!isset($errMSG)){				
				while(file_exists("../media_corner/$filename")){
					$filename = $namefile. $counter.'.'.$ext;
					$counter++;
				}
				move_uploaded_file($tmp_dir, "../media_corner/$filename");				
				//$filename = $_FILES['media_images']['name'];
				$result = mysqli_query($conn, "INSERT INTO `media_corner`(`title`, `images`, `status`) VALUES ('$media_tittle','$filename','N')")or die("Could not retrieve image: " . mysqli_error($conn));
			}		
		}		
	}

解决方案

media_tittle=


_POST['media_tittle'];


extension = array("jpeg","jpg","png"); // Count total files


这篇关于如何在数据库中的一行中插入多个文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆