php || 上传多个文件到指定路径

上传单个文件:
<td><input name="form_data" type="file" size="40" class="xuanze"></td>

上传多个文件:
<td><input name="form_data[]" type="file" multiple="multiple" size="40" class="xuanze"></td>

前端(files.php)代码:

 <html>
        <head>
            <meta http-equiv="content-type" content="text/html; charset=utf-8">
            <title>上传页面</title>
        </head>
        <body>
             <script language="javascript">
                 function Juge(theForm){
                     if(theForm.form_data.value == ""){
                         alert("请选择一张图片上传!");
                         theForm.upfile.focus();
                     }
                     if(theForm.form_description.value == ""){
                         alert("请填好图片说明!");
                         theForm.content,focus();
                     }
                     if(theForm.form_description.value.length>30){
                         alert("图片说明必须少于30字。");
                         theForm,content,focus();
                     }
                 }
            </script>
            <div id="maxdiv">
      <div id="left">
                 <form class="form" enctype="multipart/form-data" action="up_loadfiles.php" method="post">
                     <table align="center" border="1">
                         <tr>
                             <td>选择图片:</td>
                             <td><input name="form_data[]" type="file" multiple="multiple" size="40" class="xuanze"></td>
                         </tr>
                         <tr>
                             <td>输入说明:</td>
                             <td><input name="form_description" type="text" size='30'>(*>限30字)</td>
                         </tr>
                         <tr>
                             <td colspan="2">
                                 <center>
                                     <input type="submit" name="submit" value="提交" class="tijiao">
                                     <input type="reset" name="reset" value="重置" class="chongzhi">
                                 </center>
                             </td>
                        </tr>
                     </table>
                 </form>
                 <div id="button">
                    <form >
            </div>
        </body>
        </html>

php(up_loadfiles.php)代码:

<?php
        //var_dump($_FILES);

        //判断文件是否上传成功
        if(!empty($_FILES)){
        		
        		//多个文件,逐一遍历
                foreach($_FILES['form_data']['error'] as $k=>$i){

                        if($i === 0){
                                //获取上传文件的类型
                                $type = $_FILES['form_data']['type'][$k];

                                //判断上传的文件的类型
                                if($type == 'image/gif' || $type == 'image/png' || $type == 'image/jpeg' ||  $type == 'image/jpg'){

                                        $size = $_FILES['form_data']['size'][$k];   //获取上传文件大少
                                        if($size < 50*1024){    //大少为50k
                                                //重新把上传的文件名改了如下,防止上传的文件名相同而覆盖原来文件。生成的文件名为时间戳和一个
1000到9999的随机整数的加密后的数字。
                                                $newName = md5(time().mt_rand(1000,9999));

                                                //获取原来上传的文件的扩展名
                                                function getFileExts($path){
                                                        $pos = strrpos($path,".");      //strrpos()获取$path中的最后一个.的位置
                                                        return substr($path,$pos+1);    //substr()返回$path中第$pos+1开始到最后的所有字符
                                                }
                                                $extName = getFileExts($_FILES['form_data']['name'][$k]);

                                                //文件名新名称为上面的数字加原来的扩展名
                                                $filename = $newName.".".$extName;

                                                //move_uploaded_file把上传的文件保存在./upload/目录下
                                                $re = move_uploaded_file($_FILES['form_data']['tmp_name'][$k],"./upload/".$filename);

                                                if($re){
                                                        echo '文件保存成功';
                                                }else{
                                                        echo '文件保存失败';
                                                }
                                        }else{
                                                echo '上传的文件太大了';
                                        }
                                }else{
                                        echo '文件类型错误';
                                }
                        }
                }
        }else{
                echo '没有上传文件';
        }
?>

图:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值