欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP 图片上传实现代码 带详细注释

程序员文章站 2022-10-06 09:24:08
复制代码 代码如下:
复制代码 代码如下:

<?php
//用户上传图片处理文件
if ((($_files["file"]["type"] == "image/gif")|| ($_files["file"]["type"] == "image/jpeg")|| ($_files["file"]["type"] == "image/pjpeg"))&& ($_files["file"]["size"] < 100000)){ //控制允许上传的图片类型,最后的100000为允许的图片大小
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 />"; */
if (file_exists("userupload/" . $_files["file"]["name"])){
echo $_files["file"]["name"] . " already exists. ";
}else{
move_uploaded_file($_files["file"]["tmp_name"],"userupload/" . $_files["file"]["name"]);
}

$date=date('ymdhis'); //得到当前时间,如;20070705163148
$filename=$_files['file']['name']; //得到上传文件的名字
$name=explode('.',$filename); //将文件名以'.'分割得到后缀名,得到一个数组
$newpath=$date.'.'.$name[1]; //得到一个新的文件为'20070705163148.jpg',即新的路径
$oldpath=$_files['file']['tmp_name']; //临时文件夹,即以前的路径
rename("userupload/".$filename,"userupload/".$newpath);

//这里可以写你的sql语句,图片的地址是 "userupload/".$newpath

?>
<script type="text/javascript">alert('图片上传成功!!');</script>
<?php
}
}else{
echo "invalid file"; //图片类型错误或者过大
}
?>