php中的多文件上传

php中的多文件上传

我想上传多个文件并将它们存储在一个文件夹中,获取路径并将其存储在数据库中.任何你想要做多个文件上传的好例子.。

注:文件可以是任何类型的.。


梵蒂冈之花
浏览 421回答 3
3回答

神不在的星期二

我知道这是一篇老文章,但对那些试图上传多个文件的人来说,进一步的解释可能会有帮助.下面是你需要做的事情:输入名称必须定义为数组,即name="inputName[]"输入元素必须具有multiple="multiple"或者只是multiple在PHP文件中使用语法"$_FILES['inputName']['param'][index]"确保寻找空文件名和路径,数组可能包含空字符串..使用array_filter()在数数之前。下面是一个向下和肮脏的示例(只显示相关代码)HTML:<input&nbsp;name="upload[]"&nbsp;type="file"&nbsp;multiple="multiple"&nbsp;/>PHP://$files&nbsp;=&nbsp;array_filter($_FILES['upload']['name']);&nbsp;//something&nbsp;like&nbsp;that&nbsp;to&nbsp;be&nbsp;used&nbsp;before&nbsp;processing&nbsp;files. //&nbsp;Count&nbsp;#&nbsp;of&nbsp;uploaded&nbsp;files&nbsp;in&nbsp;array$total&nbsp;=&nbsp;count($_FILES['upload']['name']);//&nbsp;Loop&nbsp;through&nbsp;each&nbsp;filefor(&nbsp;$i=0&nbsp;;&nbsp;$i&nbsp;<&nbsp;$total&nbsp;;&nbsp;$i++&nbsp;)&nbsp;{ &nbsp;&nbsp;//Get&nbsp;the&nbsp;temp&nbsp;file&nbsp;path &nbsp;&nbsp;$tmpFilePath&nbsp;=&nbsp;$_FILES['upload']['tmp_name'][$i]; &nbsp;&nbsp;//Make&nbsp;sure&nbsp;we&nbsp;have&nbsp;a&nbsp;file&nbsp;path &nbsp;&nbsp;if&nbsp;($tmpFilePath&nbsp;!=&nbsp;""){ &nbsp;&nbsp;&nbsp;&nbsp;//Setup&nbsp;our&nbsp;new&nbsp;file&nbsp;path &nbsp;&nbsp;&nbsp;&nbsp;$newFilePath&nbsp;=&nbsp;"./uploadFiles/"&nbsp;.&nbsp;$_FILES['upload']['name'][$i]; &nbsp;&nbsp;&nbsp;&nbsp;//Upload&nbsp;the&nbsp;file&nbsp;into&nbsp;the&nbsp;temp&nbsp;dir &nbsp;&nbsp;&nbsp;&nbsp;if(move_uploaded_file($tmpFilePath,&nbsp;$newFilePath))&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//Handle&nbsp;other&nbsp;code&nbsp;here &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;}}希望这能帮上忙!

江户川乱折腾

可以选择多个文件,然后使用<input type='file' name='file[]' multiple>进行上传的示例php脚本:<html><title>Upload</title><?php &nbsp;&nbsp;&nbsp;&nbsp;session_start(); &nbsp;&nbsp;&nbsp;&nbsp;$target=$_POST['directory']; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($target[strlen($target)-1]!='/') &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$target=$target.'/'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$count=0; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;($_FILES['file']['name']&nbsp;as&nbsp;$filename)&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$temp=$target; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$tmp=$_FILES['file']['tmp_name'][$count]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$count=$count&nbsp;+&nbsp;1; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$temp=$temp.basename($filename); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;move_uploaded_file($tmp,$temp); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$temp=''; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$tmp=''; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;header("location:../../views/upload.php");?></html>将选定的文件作为数组接收$_FILES['file']['name'][0]存储第一个文件的名称。$_FILES['file']['name'][1]存储第二个文件的名称。诸若此类。
打开App,查看更多内容
随时随地看视频慕课网APP