doulu3808 2019-02-02 07:07
浏览 40
已采纳

即使没有提交文件,PHP多次上传也会运行一次循环

I am trying to upload multiples files using PHP and HTML but even I set the validation in my code isset, the foreach loop runs once with empty submission.

<?php

    if (isset($_FILES['fileToUpload']))
    {

        foreach($_FILES['fileToUpload']['tmp_name'] as $key => $tmp_name)
        {
            $file_name = $key . $_FILES['fileToUpload']['name'][$key];
            $file_size = $_FILES['fileToUpload']['size'][$key];
            $file_tmp = $_FILES['fileToUpload']['tmp_name'][$key];
            $file_type = $_FILES['fileToUpload']['type'][$key];
            move_uploaded_file($file_tmp, getcwd() . "/" . time() . $file_name);
        }

        echo "Success";
    }
    else
    {
        echo "<form enctype='multipart/form-data' action='' method='POST'>";
        echo "File:<input name='fileToUpload[]' multiple='multiple' type='file'/><input type='submit' value='Upload'/>";
        echo "</form>";
    }
?>
  • 写回答

2条回答 默认 最新

  • doupaoyan6083 2019-02-02 07:10
    关注

    You have to check the file name whether it is empty or not before run the foreach loop using PHP

    <?php
        if (isset($_FILES['fileToUpload']))
        {
            if($_FILES['fileToUpload']['tmp_name'][0] == "") {
                die("No files to upload");
            }
            else {
                // Now there are some files you can run upload method here
                foreach($_FILES['fileToUpload']['tmp_name'] as $key => $tmp_name) {}
            }
        }
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部