Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将多个图像文件上载到php mysql库_Php_Mysql_Multifile Uploader - Fatal编程技术网

将多个图像文件上载到php mysql库

将多个图像文件上载到php mysql库,php,mysql,multifile-uploader,Php,Mysql,Multifile Uploader,我让厨房在我想要的地方工作了65%。我想知道是否有人可以看看下面的代码,告诉我如何上传多张图片到我的图库 这是代码 简单管理表单代码: <form enctype="multipart/form-data" action="uploader.php" method="POST"> Category: <select class="text" name="dataType[]"> <option value="treerem

我让厨房在我想要的地方工作了65%。我想知道是否有人可以看看下面的代码,告诉我如何上传多张图片到我的图库

这是代码

简单管理表单代码:

    <form enctype="multipart/form-data" action="uploader.php" method="POST">


        Category: <select class="text" name="dataType[]">
        <option value="treeremoval" selected="selected">treeremoval</option>
        <option value="treetrimming" >treetrimming</option>
        <option value="treebracing" >treebracing</option>
        <option value="stumpgrinding" >stumpgrinding</option>
        <option value="firewood" >firewood</option>
        <option value="cleanup" >cleanup</option>
        </select>
<br /><br />

    Caption: <input type="text" name="title[]">
<br /><br />

Image to upload: <input type="file" name="image[]" />
<br /><br />






        Category: <select class="text" name="dataType[]">
        <option value="treeremoval" selected="selected">treeremoval</option>
        <option value="treetrimming" >treetrimming</option>
        <option value="treebracing" >treebracing</option>
        <option value="stumpgrinding" >stumpgrinding</option>
        <option value="firewood" >firewood</option>
        <option value="cleanup" >cleanup</option>
        </select>
<br /><br />

    Caption: <input type="text" name="title[]">
<br /><br />

Image to upload: <input type="file" name="image[]" />
<br /><br />



    <input type="submit" value="Upload">
</form>

类别:
特雷莫瓦尔
树木挖掘
树突
树桩研磨
柴火
清理


标题:

要上载的图像:

类别: 特雷莫瓦尔 树木挖掘 树突 树桩研磨 柴火 清理

标题:

要上载的图像:


uploader.php代码:

    <form enctype="multipart/form-data" action="uploader.php" method="POST">


        Category: <select class="text" name="dataType[]">
        <option value="treeremoval" selected="selected">treeremoval</option>
        <option value="treetrimming" >treetrimming</option>
        <option value="treebracing" >treebracing</option>
        <option value="stumpgrinding" >stumpgrinding</option>
        <option value="firewood" >firewood</option>
        <option value="cleanup" >cleanup</option>
        </select>
<br /><br />

    Caption: <input type="text" name="title[]">
<br /><br />

Image to upload: <input type="file" name="image[]" />
<br /><br />






        Category: <select class="text" name="dataType[]">
        <option value="treeremoval" selected="selected">treeremoval</option>
        <option value="treetrimming" >treetrimming</option>
        <option value="treebracing" >treebracing</option>
        <option value="stumpgrinding" >stumpgrinding</option>
        <option value="firewood" >firewood</option>
        <option value="cleanup" >cleanup</option>
        </select>
<br /><br />

    Caption: <input type="text" name="title[]">
<br /><br />

Image to upload: <input type="file" name="image[]" />
<br /><br />



    <input type="submit" value="Upload">
</form>


在表单中,添加多个文件输入。一种方法是使用数组名-
image[]

Image to upload: <input type="file" name="image[]" /><br />
Image to upload: <input type="file" name="image[]" /><br />
Image to upload: <input type="file" name="image[]" /><br />
....  // as many as you want. Just be aware of upload_max_filesize, memory_limit, post_max_size etc.
<br /> 
手册中有一个关于上传文件时常见陷阱的章节,尤其是多个文件


如果您想执行多个其他操作,可以使用相同的方法(我缩写了selects以减少复制/粘贴)-


最简单的方法是添加多个同名的
文件
输入(以一种形式),并添加方括号:

<input type="file" name="image[]">
因此,您将整个上传后过程放入一个循环中,循环遍历文件。 请注意,如果您不总是随每个文件输入提交图像,则某些变量(=输入)将保持为空,您需要将错误处理更改为不显示错误。 我会这样做:

if (move_uploaded_file($_FILES["image"]["tmp_name"][$i], $target_path)) {
     //processing...
} else if (!empty($_FILES["image"]["name"][$i]) {
     //error
}

显然,在10版之前的Internet Explorer(!)中不幸不支持HTML5功能,它允许您执行以下操作:

<input name="upload[]" type="file" multiple="multiple" />
然后在PHP中,所有文件都将存储在通常可以找到单个文件的位置,除了它现在是一个数组之外,您可以通过添加一层方括号来访问它。例如,
$\u文件['uploads']['name'][0]
是您的第一个文件

下面的代码将允许您迭代每个文件。当然,这段代码只显示每个文件名,但是您可以更改循环的内容

foreach ($_FILES['uploads']['name'] as $filename) {
    echo '<li>' . $filename . '</li>';
}
foreach($\u文件['uploads']['name']作为$filename){
回显“
  • ”.$filename.
  • ”; }
    在这个循环中,您将像正常情况下上传单个文件一样上传每个文件


    (来源:)

    我不知道我是否可以发布链接,但我发现这是在寻找一个可以上传多个文件的系统,并希望与所有其他正在寻找它的人共享

    MySQL PHP
    添加多个
    每个都有一个唯一的名称您可以用一种相对简单的方式设置它。。。我想它在输入type=“file”上,在那里你放了一个数据类型。。。还是什么?然后$\u文件将是多个文件的数组。我们在学校做的,一次输入多个文件,但是我们使用了一个教师模板,所以我忘了。如果您找不到,请通知我,我将搜索我的文件。@Dagon您能再详细解释一下吗。很抱歉,这种编码有点新。@Ariane我喜欢你的解决方案,如果你能找到那个文件,我将不胜感激。你可以发电子邮件给我daugaard47@gmail.comI很抱歉,我没有受过这方面的教育,我意识到答案就在我面前,但当我尝试了很多错误。你能使用我提供的代码并为我修改它吗。只是不确定从哪里开始foreach脚本…?我确实使用了你的代码。我不想复制/粘贴所有内容,因此我使用缩写
    来显示您不需要更改的内容。保留代码,但只需添加/编辑我显示的行即可。您也可以在php手册中阅读相关内容-在重新阅读我的答案时,我意识到我有点不对劲。您需要为($i=0;0)执行for循环,而不是
    foreach($\u FILES['image']as$FILES)
    $i@user1666456我想它应该是
    foreach($\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
    。我原来的方法是在
    $\u文件
    数组中循环-
    [name]、[type]、[tmp\u name]、[size]、[error]
    ,而不是文件数组。可以吗?不确定是否可以将“true”作为
    多个
    属性的值写入。只要
    就行了。另外,确保表单具有
    enctype=“多部分/表单数据”
    <input type="file" name="image[]">
    
    $_FILES["image"]["name"][0] 
    
    if (move_uploaded_file($_FILES["image"]["tmp_name"][$i], $target_path)) {
         //processing...
    } else if (!empty($_FILES["image"]["name"][$i]) {
         //error
    }
    
    <input name="upload[]" type="file" multiple="multiple" />
    
    <input name="upload[]" type="file" multiple />
    
    <form method="post" action="upload.php" enctype="multipart/form-data">
        <input name="uploads[]" type="file" multiple="multiple" />
        <input type="submit" value="Send" />
    </form>
    
    foreach ($_FILES['uploads']['name'] as $filename) {
        echo '<li>' . $filename . '</li>';
    }
    
    CREATE TABLE `upload_data` (
      `ID` int(5) NOT NULL AUTO_INCREMENT,
      `USER_CODE` int(4) unsigned zerofill NOT NULL,
      `FILE_NAME` varchar(200) NOT NULL,
      `FILE_SIZE` varchar(200) NOT NULL,
      `FILE_TYPE` varchar(200) NOT NULL,
      PRIMARY KEY (`ID`)
    )
    
    <?php
    if(isset($_FILES['files'])){
        $errors= array();
        foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
            $file_name = $key.$_FILES['files']['name'][$key];
            $file_size =$_FILES['files']['size'][$key];
            $file_tmp =$_FILES['files']['tmp_name'][$key];
            $file_type=$_FILES['files']['type'][$key];  
            if($file_size > 2097152){
                $errors[]='File size must be less than 2 MB';
            }       
            $query="INSERT into upload_data (`USER_ID`,`FILE_NAME`,`FILE_SIZE`,`FILE_TYPE`) VALUES('$user_id','$file_name','$file_size','$file_type'); ";
            $desired_dir="user_data";
            if(empty($errors)==true){
                if(is_dir($desired_dir)==false){
                    mkdir("$desired_dir", 0700);        // Create directory if it does not exist
                }
                if(is_dir("$desired_dir/".$file_name)==false){
                    move_uploaded_file($file_tmp,"user_data/".$file_name);
                }else{                                  //rename the file if another one exist
                    $new_dir="user_data/".$file_name.time();
                     rename($file_tmp,$new_dir) ;               
                }
                mysql_query($query);            
            }else{
                    print_r($errors);
            }
        }
        if(empty($error)){
            echo "Success";
        }
    }
    ?>
    
    
    <form action="" method="POST" enctype="multipart/form-data">
        <input type="file" name="files[]" multiple/>
        <input type="submit"/>
    </form>