PHP tupianshangchuanzulan

主要步骤;

1.控制上传文件的类型
2.控制上传文件的大小
3.防止文件名重复
	 修改保存的文件名
		用户名+时间戳+随机数+文件名
		流水号
		
	 使用文件夹
		  public/lch/2017-2-12/1.jpg
		
 4.保存文件

  

1.建立form表单 注意加入    enctype="multipart/form-data"  标签

<form action="chuli.php" method="post" enctype="multipart/form-data">
<input type="file" name="pic" />
<input type="submit" value="提交"/>
</form>

2.接收数据使用  $_FILES["name"]; 接收

$pic = $_FILES["pic"];
var_dump($pic);

  输出结果:$pic 是一个 一维关联数组

3.判断  及上传 图片

关键字iconv    file_exists   move_uploaded_file

if($pic["error"])
{
echo "文件有问题"	;
}
else
{   //控制上传文件类型和文件大小
	if(($pic["type"]=="image/png")&&($pic["size"]<=1024000))
	{   //创建储存地址,加个时间戳  避免 相同名字的图片 被覆盖
		$zhunbei = "./pic/".date("YmdHis").$pic["name"];
		//格式转化   utf-8不能解析汉字 转化为国标
		$zhunbei = iconv("UTF-8","gb2312",$zhunbei);
		if(file_exists($zhunbei))
		{
		    echo "该文件已经存在!";	
		}	
		else
		{
			//上传图片
		  move_uploaded_file($pic["tmp_name"],$zhunbei);	
		}
	}	
	
}

 上传预览

1.界面  有一个 <iframe> 标签  用于储存 打开界面  在HTML 界面内部 打开

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>无标题文档</title>
 6 <style type="text/css">
 7 #yl{ width:200px; height:300px; background-image:url(img/11.png); background-size:200px 300px;}
 8 #file{ width:200px; height:300px; float:left; opacity:0;}
 9 </style>
10 </head>
11 
12 <body>
13 
14 <form id="sc" action="chuli.php" method="post" enctype="multipart/form-data" target="shangchuan">
15     
16     <input type="hidden" name="tp" value="" id="tp" />
17     
18     <div id="yl">
19         <input type="file" name="file" id="file" onchange="document.getElementById('sc').submit()" />
20     </div>
21     
22     
23     
24 </form>
25 
26 <iframe style="display:none" name="shangchuan" id="shangchuan">
27 </iframe>
28 
29 
30 </body>
31 
32 <script type="text/javascript">
33 
34 //回调函数,调用该方法传一个文件路径,该变背景图
35 function showimg(url)
36 {
37     var div = document.getElementById("yl");
38     div.style.backgroundImage = "url("+url+")";
39     
40     document.getElementById("tp").value = url;
41 }
42 
43 </script>
44 
45 </html>
test.php

PHP界面    注意 不同界面传值 和unlink 方法

 1 <?php
 2 
 3 if($_FILES["file"]["error"])
 4 {
 5     echo $_FILES["file"]["error"];
 6 }
 7 else
 8 {
 9     if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png")&& $_FILES["file"]["size"]<1024000)
10     {
11         $fname = "./img/".date("YmdHis").$_FILES["file"]["name"];    
12         
13         $filename = iconv("UTF-8","gb2312",$fname);
14         
15         if(file_exists($filename))
16         {
17             echo "<script>alert('该文件已存在!');</script>";
18         }
19         else
20         {
21             move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
22             
23             unlink($_POST["tp"]);
24             
25             echo "<script>parent.showimg('{$fname}');</script>";
26         }
27         
28     }
29 }
chuli.php

 

posted @ 2017-01-13 10:50  get("新技能")  阅读(167)  评论(2编辑  收藏  举报