首页 > 代码库 > 单页面实现的图片上传列表改名删除图片同名称顺序排序不同名称不同排序
单页面实现的图片上传列表改名删除图片同名称顺序排序不同名称不同排序
<?php session_start(); $url=‘http://‘.$_SERVER[‘HTTP_HOST‘].$_SERVER[‘PHP_SELF‘]; $save_dir="images"; $file_current_dir=dirname(__FILE__).‘/‘.$save_dir; $filepath=‘http://‘.$_SERVER[‘HTTP_HOST‘].‘/‘.$save_dir; /** * [file_upload 文件上传函数,支持单文件,多文件] * Author: 程威明 * @param string $name input表单中的name * @param string $save_dir 文件保存路径,相对于当前目录 * @param array $allow_suffix 允许上传的文件后缀 * @return array array() { * ["status"]=> 全部上传成功为true,全部上传失败为false,部分成功为成功数量 * ["path"]=>array() {已成功的文件路径} * ["error"]=>array() {失败信息} * } */ function files_upload($name="photo",$filename=‘file‘,$save_dir="images",$allow_suffix=array(‘jpg‘,‘jpeg‘,‘gif‘,‘png‘),$random_keys=‘A‘) { //如果是单文件上传,改变数组结构 if(!is_array($_FILES[$name][‘name‘])){ $list = array(); foreach($_FILES[$name] as $k=>$v){ $list[$k] = array($v); } $_FILES[$name] = $list; } $response = array(); $response[‘status‘] = array(); $response[‘path‘] = array(); $response[‘error‘] = array(); //拼接保存目录 $save_dir = ‘./‘.trim(trim($save_dir,‘.‘),‘/‘).‘/‘; //判断保存目录是否存在 if(!file_exists($save_dir)) { //不存在则创建 if(false==mkdir($save_dir,0777,true)) { $response[‘status‘] = false; $response[‘error‘][] = ‘文件保存路径错误,路径 "‘.$save_dir.‘" 创建失败‘; } } $num = count($_FILES[$name][‘tmp_name‘]); $success = 0; //循环处理上传 for($i=0;$i <$num;$i++) { //判断是不是post上传 if(!is_uploaded_file($_FILES[$name][‘tmp_name‘][$i])) { $response[‘error‘][] = ‘非法上传,文件 "‘.$_FILES[$name][‘name‘][$i].‘" 不是post获得的‘; continue; } //判断错误 if($_FILES[$name][‘error‘][$i]>0) { $response[‘error‘][] = ‘文件 "‘.$_FILES[$name][‘name‘][$i].‘" 上传错误,error下标为 "‘.$_FILES[$name][‘error‘][$i].‘"‘; continue; } //获取文件后缀 $suffix = ltrim(strrchr($_FILES[$name][‘name‘][$i],‘.‘),‘.‘); //判断后缀是否是允许上传的格式 if(!in_array($suffix,$allow_suffix)) { $response[‘error‘][] = ‘file "‘.$_FILES[$name][‘name‘][$i].‘" types that are not allowed to upload ‘; continue; } if(empty($_SESSION[‘array‘][$filename])) { $_SESSION[‘array‘][$filename]=array("A"=>"A","B"=>"B","C"=>"C","D"=>"D","E"=>"E",‘F‘=>"F",‘G‘=>"G",‘H‘=>"H",‘I‘=>"I",‘J‘=>"J",‘K‘=>"K"); } $random_keys=array_shift($_SESSION[‘array‘][$filename]); unset($_SESSION[‘array‘][$filename][$random_keys]); //得到上传后文件名 $new_file_name =$filename.$random_keys.‘.‘.$suffix; //拼接完整路径 $new_path = $save_dir.$new_file_name; //上传文件 把tmp文件移动到保存目录中 if(!move_uploaded_file($_FILES[$name][‘tmp_name‘][$i],$new_path)) { $response[‘error‘][] = ‘文件 "‘.$_FILES[$name][‘name‘][$i].‘" 从临时文件夹移动到保存目录时发送错误‘; continue; } //返回由图片文件路径组成的数组 $response[‘path‘][] =$save_dir.$new_file_name; $success++; } if(0==$success){ $success = false; }elseif($success==$num){ $success = true; } $response[‘status‘] = $success; return $response; } if(empty($_SESSION[‘filename‘])){ $_SESSION[‘filename‘]=‘‘; } //文件改名 if(@$_POST[‘action‘]==‘rename‘) { $oldname=$_POST[‘oldname‘]; //$oldname=str_replace(substr($oldname,strrpos($oldname,‘.‘)),‘‘,$oldname); $oldname=$save_dir."/".$oldname; $newname=$save_dir."/".$_POST[‘newfilename‘].‘.‘.$_POST[‘ext‘]; $result=rename($oldname,$newname); if($result==true){ header(‘Location: ‘.$url); } } //文件删除 if(@$_POST[‘action‘]==‘del‘) { $result=0; $file = $save_dir."/".$_POST[‘filename‘]; echo $file; $result = @unlink($file) or die(‘dsd‘);; if ($result == true) { $result=1; } echo $result; } if(@$_POST[‘action‘]==‘upload‘){ $filename=$_POST[‘filename‘]; $_SESSION[‘filename‘]=$filename; $aa=files_upload(‘file‘,$filename,‘images‘,array(‘jpg‘,‘jpeg‘,‘gif‘,‘png‘),$random_keys); if($aa[‘status‘]==true){ header(‘Location: ‘.$url); } else { echo $aa[‘error‘][0]; } } else { $dir = $file_current_dir; // Open a known directory, and proceed to read its contents if (is_dir($dir)) { if ($dh = opendir($dir)) { $i=0; while (($file = readdir($dh)) !== false) { $size = intval((filesize($dir.‘/‘.$file)/1000)).‘k‘; list($filesname,$kzm)=explode(".",$file);//获取扩展名 if($kzm=="gif" or $kzm=="jpg" or $kzm=="JPG" or $kzm=="png") { //文件过滤 ?> filename: <?php echo $file;?> <?php echo $size;?> <img src="http://www.mamicode.com/<?php echo $filepath.‘/‘.$file ;?> " width="50px" height="50px"> <?php echo $filepath.‘/‘.$file;?> <a onclick="return rename(‘<?php echo $i;?>‘,‘<?php echo $file;?>‘,)" href=http://www.mamicode.com/‘#‘>rename</a> <form method="post" id="form_<?php echo $i;?>" action="1.php" style="display:none"> <input type="text" name="newfilename" id="newfilename" > <input type="hidden" name="oldname" id="oldname" value="http://www.mamicode.com/<?php echo $file;?>" > <input type="hidden" name="action" id="action" value="http://www.mamicode.com/rename"> <input type="hidden" name="ext" id="ext" value="http://www.mamicode.com/<?php echo $kzm;?>"> <input type="submit" name="submit" value="http://www.mamicode.com/Submit" /> </form> <a onclick="return deldel(‘<?php echo $file;?>‘)" href=http://www.mamicode.com/‘#‘ >del
"color: #000000">php $i++; } } closedir($dh); } } ?> <html> <body> <br> <br> <br> <form action="1.php" method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="file" id="file" /> <br /> <label for="file">name</label> <input type="text" name="filename" id="filename" value="http://www.mamicode.com/<?php echo $_SESSION[‘filename‘];?>"> <input type="hidden" name="action" value="http://www.mamicode.com/upload"> <br /> <input type="submit" name="submit" value="http://www.mamicode.com/Submit" /> </form> </body> </html> <?php } ?> <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> <script> function rename(formid,filename) { $("#form_"+formid).toggle(); } function deldel(filename) { var del=‘del‘; if(confirm(‘confirm del‘)){ $.ajax({ type:‘post‘, url:‘<?php echo $url;?>‘, data: {action:del, filename:filename}, success:function(data){ alert(‘del success‘); location.reload(); }, error:function(){ alert(‘del fail,check file mod‘); } }); } } </script>
单页面实现的图片上传列表改名删除图片同名称顺序排序不同名称不同排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。