上传图片类型限制和防止反复提交,php递归删除空文件夹
来源:互联网 发布:讲课视频软件 编辑:程序博客网 时间:2024/06/05 07:54
html代码
<html><meta charset="utf-8"><?php session_start(); $bmcode = mt_rand(0,10000); $_SESSION["bmcode"] = $bmcode;?><form action="ha.php" method="post" enctype="multipart/form-data"> <!-- <input type="file" name="myphoto" /> --> <input type="hidden" name="jiami" value="<?php echo $bmcode; ?>" > <input type="file" name="myphoto" accept="image/jpeg" > <input type="submit" value="上传" /></form></html>
php接收页面代码
<?phpheader("content-type:text/html;charset=utf-8");session_start();if(isset($_SESSION["bmcode"])&&$_SESSION["bmcode"]==$_POST["jiami"]){ $file = $_FILES['myphoto']; //得到传输的数据 //得到文件名称 // var_dump($file); die; // var_dump($_FILES['myphoto']); $name = $file['name']; $type = strtolower(substr($name,strrpos($name,'.')+1)); //得到文件类型,并且都转化成小写 // $allow_type = array('jpg','jpeg','png'); //定义允许上传的类型 $allow_type = array('jpg','jpeg'); //定义允许上传的类型 //判断文件类型是否被允许上传 if(!in_array($type, $allow_type)){ //如果不被允许,则直接停止程序运行 echo "只允许jpg,照片不要大于400kb"; exit(); } //判断是否是通过HTTP POST上传的 if(!is_uploaded_file($file['tmp_name'])){ //如果不是通过HTTP POST上传的 // echo "只允许post方式"; exit(); } //后台限制上传大小 不大于400kb-409600字节 if($file["size"]>409600){ echo"照片文件过大,无法上传"; exit(); } $thismonth = date("Y-m",time()); // $upload_path = "D:/baomingupload/".$thismonth; //上传文件保存路径 每个月一个文件 $upload_path = "D:/".$thismonth."/"; //上传文件保存路径 每个月一个文件 // echo $upload_path;die; if(!file_exists($upload_path)){ mkdir($upload_path); } //开始移动文件到相应的文件夹 // echo "file tmp_name".$file['tmp_name']."和".$upload_path.$file['name']; die; $filename = substr($file['name'], strrpos($file['name'],".")); //把上传的图片改文件名 // echo $filename; exit(); if(move_uploaded_file($file['tmp_name'],iconv("utf-8","gbk",$upload_path.time().$filename))){ // if(move_uploaded_file($file['tmp_name'],$upload_path.time())){ // header("location:http://localhost/upload.php"); //上传成功跳转到成功页 echo "报名信息提交 成功!!"; unset($_SESSION["bmcode"]) ; }else{ echo "报名信息提交 失败!!"; }/**如果session存在 而且正确**/}else{ echo"已经提交成功,不需要再次提交";}
php递归删除空文件夹步骤:1.遍历目录及子目录2.使用 scandir 判断目录是否为空,为空则使用rmdir 删除。<?php /** 删除所有空目录 * @param String $path 目录路径 */ function rm_empty_dir($path){ if(is_dir($path) && ($handle = opendir($path))!==false){ while(($file=readdir($handle))!==false){ // 遍历文件夹 if($file!='.' && $file!='..'){ $curfile = $path.'/'.$file; // 当前目录 if(is_dir($curfile)){ // 目录 rm_empty_dir($curfile); // 如果是目录则继续遍历 if(count(scandir($curfile))==2){ // 目录为空,=2是因为. 和 ..存在 rmdir($curfile); // 删除空目录 } } } } closedir($handle); } } $folder = '目标文件夹'; rm_empty_dir($folder); ?>
0 0
- 上传图片类型限制和防止反复提交,php递归删除空文件夹
- 防止反复提交窗体(PHP)
- php删除空文件夹递归实现
- 递归删除非空文件夹
- 递归删除非空文件夹
- php递归创建和删除文件夹
- PHP递归删除文件和文件夹
- php递归删除文件夹
- session防止表单反复提交,php让ajax跨域
- ajax 防止用户反复提交
- 删除非空文件夹的递归算法
- linuxC递归删除某个非空文件夹
- Shell脚本递归删除空文件夹
- python实现递归删除空文件夹
- vc 递归删除非空文件夹
- php 图片上传 文件上传 大小 限制
- svn per-commit钩子限制填写message、提交文件和文件夹类型
- 【PHP】删除非空目录(文件夹)
- Spring MVC学习(六)-------注解式控制器详解4
- jdbc连接sql server 出现 java.sql.SQLException: Network error IOException: Connection refused:
- krpano限制鼠标放大的比列
- STL适配器之priority_queue
- Spring MVC学习(六)-------注解式控制器详解5
- 上传图片类型限制和防止反复提交,php递归删除空文件夹
- 第七讲:c/c++文件的读取、操作和定位
- Android 国际化与屏幕适配!
- 求质数
- 2017年华为实习生面经
- android DataBinding 的简单使用
- Spring MVC学习(七)-------SpringMVC数据类型转换
- 手把手教你写Linux设备驱动---中断(三)--workqueue实现(基于友善之臂4412开发板)
- scalaJS初探