php上传图片客户端和服务器端实现方法
本文实例讲述了php上传图片客户端和服务器端实现方法。分享给大家供大家参考。具体如下:
前台表单代码
<formname="form1"method="post"action="admin_upfile.php"enctype="multipart/form-data"> <inputtype="file"name="pic"> <inputtype="submit"name="Submit"value="开始上传"class="button"> </form>
后端php代码
<?php
//这里上传$upsize判断上传文件的大小
$uppath="/attached/";//文件上传路径
//转换根目录的路径
if(strpos($uppath,"/")==0)
{
$i=0;
$thpath=$_SERVER["SCRIPT_NAME"];
$thpath=substr($thpath,1,strlen($thpath));
while(strripos($thpath,"/")!==false)
{
$thpath=substr($thpath,strpos($thpath,"/")+1,strlen($thpath));
$i=++$i;
}
$pp="";
for($j=0;$j<$i;++$j)
{
$pp.="../";
}
$uppaths=$pp.substr($uppath,1,strlen($thpath));
}
$filename=date("y-m-d");
if(is_dir($uppaths.$filename)!=TRUE)
mkdir($uppaths.$filename,0777);
$f=$_FILES['pic'];
if($f["type"]!="image/gif"&&$f["type"]!="image/pjpeg"&&$f["type"]!="image/jpeg"&&$f["type"]!="image/x-png")
{
echo"<script>alert('只能上传图片格式的文件');window.close()</script>";
returnfalse;
}
//获得文件扩展名
$temp_arr=explode(".",$f["name"]);
$file_ext=array_pop($temp_arr);
$file_ext=trim($file_ext);
$file_ext=strtolower($file_ext);
//新文件名
$new_file_name=md5(date("YmdHis")).'.'.$file_ext;
echo$dest=$uppaths.$filename."/".date("ymdhis")."_".
$new_file_name;//设置文件名为日期加上文件名避免重复上传目录
echo$dest1=$uppath.$filename."/".date("ymdhis")."_".
$new_file_name;//设置文件名为日期加上文件名避免重复
$r=move_uploaded_file($f['tmp_name'],$dest);
?>
希望本文所述对大家的php程序设计有所帮助。