找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1534|回复: 0

PHP简单上传脚本并返回上传路径

[复制链接]
发表于 2016-11-12 15:19:37 | 显示全部楼层 |阅读模式

功能描述:我以获取图片为例,使用<input type="file">这个标签获取本地图片(文件)并且能够显示在当前页面,然后上传至本地服务器,并存进数据库(存储的是图片的地址,并不是文件本身)。

其中,显示图片的js代码是参考网上一位朋友发的资源,叫什么我也忘记了,在这里先申明一下。

下面直接上代码:

1.基本的页面代码+js


0 j- Z) K; i6 r9 X# J
  • <form action="upload_file.php" method="post" enctype="multipart/form-data">  
  •     <label for="file">Filename:</label>  
  •     <input type="file" name="file" id="file" onchange="javascript:setImagePreview();">  
  •     <div id="localImag"><img id="preview" width=-1 height=-1 style="diplay:none" /></div>  
  •     <br>  
  •     <input type="submit" name="submit" value="Submit" />  
  • </form>  
  •   
  • </body>  
  • </html>  
    2 K: h- [) ?1 n5 W* A3 g9 B

& N5 J" [& A  d3 @" }, {

" F9 a2 G. I5 J; `2.PHP代码:
) S$ ~1 g, F6 d
  • <?php  
  •     session_start();  
  •     $_SESSION["userid"]="zxh";  
  •     if (1)//这个地方可以填写上传文件的限制,比如格式大小要求等,为了方便测试,这里没有写上传限制。  
  •     {  
  •         if ($_FILES["file"]["error"] > 0)  
  •         {  
  •             echo "Return Code: " . $_FILES["file"]["error"] . "<br />";//获取文件返回错误  
  •         }  
  •         else  
  •         {  
  •             //打印文件信息  
  •             echo "Upload: " . $_FILES["file"]["name"] . "<br />";//获取文件名  
  •             echo "Type: " . $_FILES["file"]["type"] . "<br />";//获取文件类型  
  •             echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";//获取文件大小  
  •             echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";//获取文件临时地址  
  •               
  •             //自定义文件名称  
  •             $array=$_FILES["file"]["type"];  
  •             $array=explode("/",$array);  
  •             $newfilename="new_name";//自定义文件名(测试的时候中文名会操作失败)  
  •             $_FILES["file"]["name"]=$newfilename.".".$array[1];  
  •               
  •             if (!is_dir("upload/".$_SESSION["userid"]))//当路径不穿在  
  •             {  
  •                 mkdir("upload/".$_SESSION["userid"]);//创建路径  
  •             }  
  •             $url="upload/".$_SESSION["userid"]."/";//记录路径  
  •             if (file_exists($url.$_FILES["file"]["name"]))//当文件存在  
  •             {  
  •                 echo $_FILES["file"]["name"] . " already exists. ";  
  •             }  
  •             else//当文件不存在  
  •             {  
  •                 $url=$url.$_FILES["file"]["name"];  
  •                 move_uploaded_file($_FILES["file"]["tmp_name"],$url);  
  •                 echo "Stored in: " . $url;  
  •             }  
  •         }  
  •      }  
  •     else  
  •     {  
  •         echo "Invalid file";  
  •     }  
  • ?>  
  •   
  • <html>  
  • <body>  
  •     <br><br>  
  •     <img src="<?php echo $url;?>">  
  • </body>  
  • </html>  
    - Q, c- g% x9 t) F

+ i' d( O* ?, }  S) R0 B+ {: ]2 A2 @; O7 z2 B* p; _. ~" m
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表