PHP一次实现多个照片上传的方法:1、创建index.html文件;2、创建连接数据库conn.PHP文件;3、创建图片处理upload.PHP文件;4、通过“if($error == UPLOAD_ERR_OK){...}”实现上传即可。
本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。
最近遇到一个需求,就是多张图片上传,按住Ctrl键能选择多张图片一次性上传,上传成功后数据库保存图片的路径及图片原来的文件名。该功能一般在比较成熟的内容编辑器插件中有,今天特意挑出来给大家讲讲,下面在本地环境给大家演示。总共三个文件index.html、conn.PHP、upload.PHP
index.html文件
<html> <head>上传文件</head> <body> <form method=post action=upload.PHP enctype=multipart/form-data> <input name='uploads[]' type=file multiple> <input type=submit name=uploadpic value=上传> </form> </body> </html>
<?PHP $conn=MysqL_connect(localhost,root,root) or die(数据库服务器连接错误.MysqL_error()); MysqL_select_db(test2,$conn) or die(数据库访问错误.MysqL_error()); MysqL_query(set character utf8); MysqL_query(set names utf8);
<?PHP include(conn.PHP); $uploadfile; // 图片的名字 if($_POST['uploadpic']=='上传'){ $dest_folder = D:/PHPStudy/WWW/picture/; //上传图片保存的路径 图片放在跟你upload.PHP同级的picture文件夹里 $arr=array(); //定义一个数组存放上传图片的名称方便你以后会用的。 $count=0; if(!file_exists($dest_folder)){ mkdir($dest_folder,700); // 创建文件夹,并给予最高权限 } $tp = array(image/gif,image/pjpeg,image/jpeg,image/png); //检查上传文件是否在允许上传的类型 foreach ($_FILES[uploads][error] as $key => $error){ if(!in_array($_FILES[uploads][type][$key],$tp)){ echo <script language='javascript'>; echo alert(\文件类型错误!\);; echo </script>; exit; } if($error == UPLOAD_ERR_OK){ $tmp_name = $_FILES[uploads][tmp_name][$key]; $a=explode(.,$_FILES[uploads][name][$key]); //截取文件名跟后缀 // $prename = substr($a[0],10); //如果你到底的图片名称不是你所要的你可以用截取字符得到 $prename = $a[0]; $name = date('YmdHis').mt_rand(100,999)...$a[1]; // 文件的重命名 (日期+随机数+后缀) $uploadfile = $dest_folder.$name; // 文件的路径 move_uploaded_file($tmp_name, $uploadfile); $arr[$count]=$uploadfile; $query=insert into product(name,tupian,pLike) values('$prename','$uploadfile','0'); // 插入到数据库 $res=MysqL_query($query); if($res) echo $prename.chenggong<br/>; echo $uploadfile.<br />; $count++; } } echo 总共.$count.文件; }
推荐学习:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。