PHP5图片上传代码,日期文件夹,随机文件名
index.htm
upload.php
$f=$_FILES[jeff_img_upload];
//有没有传文件判断
if ($f[error]==4){
echo("<script>alert(请选择你要上传的文件,谢谢!);location.href=index.htm;</script>");
}
else{
//出错判断
if ($f[error]){
echo "失败,文件太大了!错误代码是".$f[error];
exit;
}
//类型判断
if (substr($f[type], 0, 5) == image) {
switch ($f[type]) {
case image/jpeg:
case image/jpg:
case image/pjpeg:
$ext = .jpg;
break;
case image/gif:
$ext = .gif;
break;
case image/png:
case image/x-png:
$ext = .png;
break;
default:
header(Content-type: text/html; charset=UTF-8);
echo("<script>alert(你传的不是图片吧?);location.href=index.htm;< /script>");<br /> die(REDIRECTING...);<br /> break;<br /> }<br /> }else {<br /> header(Content-type: text/html; charset=UTF-8);<br /> echo("<script>alert(你传的不是图片吧?);location.href=index.htm;</script>");
die(REDIRECTING...);
}
//生成随机数
$randomnum=NULL;
for($j=0;$j {
srand((double)microtime()*1000000);
$randomnumber=rand(!$j ? 1: 0,9);//产生随机数,不以0为第一个数,有些特殊的地方0开头被系统省略
$randomnum.=$randomnumber;
}
$dest_dir=/var/www/htdocs/upload;//设定上传目录
//生成日期目录。先判断日期目录是否存在,不存在则创建它。
if(!file_exists(date("Ymd"))){
mkdir(date("Ymd"),0777);}
$dest=$dest_dir./.date("Ymd")./.time()._.$randomnum.$ext;//设置文件名为时间戳加上随机数避免重复
$r=move_uploaded_file($f[tmp_name],$dest);
chmod($dest, 0777);//设定上传的文件的属性
}
echo "成功了,文件地址是:".$dest;
?>

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SublimeText3 Chinese version
Chinese version, very easy to use

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.