Home  >  Article  >  Backend Development  >  php file upload management system

php file upload management system

墨辰丷
墨辰丷Original
2018-06-06 17:00:542482browse

This article mainly introduces the php file upload management system. Interested friends can refer to it. I hope it will be helpful to everyone.

The code is as follows

<?php
$admin_pw="admin";//管理密码
$uploaddir="upload";//上传目录
session_start();
if($_GET[&#39;action&#39;]=="getcode")
{
 setcode();
 exit();
}
if($_POST[&#39;password&#39;]==$admin_pw && $_POST[&#39;yz&#39;]==$_SESSION[&#39;yzcode&#39;])
{
 $_SESSION[&#39;logined&#39;]=$admin_pw;
}
if($_GET[&#39;action&#39;]=="logout")
{
 $_SESSION[&#39;logined&#39;]="";
 header("location: ".$_SERVER[&#39;PHP_SELF&#39;]);
 exit();
}
if($_SESSION[&#39;logined&#39;]!=$admin_pw)
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>请登录</title>
</head>
<body>
<form action="" method="post">
输入密码:<input type="password" name="password" style="width:100px;" /><br />验证字符:<input type="text" style="width:40px;" name="yz" /><a href="#" onclick="document.tzm.src=&#39;?action=getcode&#39;;"><img src="?action=getcode" alt="验证码" id="tzm" name="tzm" /></a><br /><input type="submit" value="进入管理" />
</form>
</body>
</html>
<?php
}
else
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>文件上传</title>
</head>
<body>
<?php
 if($_POST[&#39;ac&#39;]=="upload")
 {
 $fileall=explode(&#39;.&#39;,$_FILES[&#39;file&#39;][&#39;name&#39;]);
 $filetype=$fileall[count($fileall)-1];
 $filename=$uploaddir."/".$_FILES[&#39;file&#39;][&#39;name&#39;]."_".rand(1,999999999).".".$filetype;
 $fileexists=file_exists($filename);
 while($fileexists==true)
 {
 $filename=$uploaddir."/".$_FILES[&#39;file&#39;][&#39;name&#39;]."_".rand(1,999999999).".".$filetype;
 $fileexists=file_exists($filename);
 }
 if(move_uploaded_file($_FILES["file"]["tmp_name"],$filename))
 {
 $url="http://".$_SERVER[&#39;SERVER_NAME&#39;].$_SERVER[&#39;REQUEST_URI&#39;]; 
 echo "文件:".$filename." 上传成功!<br>文件地址:<input type=text style=&#39;width:350px;&#39; value=".dirname($url)."/".$filename." /><a href=".dirname($url)."/".$filename." target="_blank">测试</a>";
 }
 else
 {
 echo "文件".$filename."上传失败!";
 }
 }
?>
<form action="" method="post" enctype="multipart/form-data">
选择文件:<input type="file" name="file" id="file" width="100px" /><input type="hidden" name="ac" value="upload" /><input type="submit" value="上传" />
</form>
<p><a href="?action=logout">退出登录</a></p>
</body>
</html>
<?php
}

function setcode()
{
 Header("Content-type: image/gif");
 $border = 0; //是否要边框 1要:0不要
 $how = 4; //验证码位数
 $w = $how*15; //图片宽度
 $h = 20; //图片高度
 $fontsize = 5; //字体大小
 $alpha = "abcdefghijkmnopqrstuvwxyz"; //验证码内容1:字母
 $number = "0123456789"; //验证码内容2:数字
 $randcode = ""; //验证码字符串初始化
 srand((double)microtime()*1000000); //初始化随机数种子
 $im = ImageCreate($w, $h); //创建验证图片
 $bgcolor = ImageColorAllocate($im, 255, 255, 255); //设置背景颜色
 ImageFill($im, 0, 0, $bgcolor); //填充背景色
 if($border)
 {
 $black = ImageColorAllocate($im, 0, 0, 0); //设置边框颜色
 ImageRectangle($im, 0, 0, $w-1, $h-1, $black);//绘制边框
 }
 for($i=0; $i<$how; $i++)
 { 
 $alpha_or_number = mt_rand(0, 1); //字母还是数字
 $str = $alpha_or_number ? $alpha : $number;
 $which = mt_rand(0, strlen($str)-1); //取哪个字符
 $code = substr($str, $which, 1); //取字符
 $j = !$i ? 4 : $j+15; //绘字符位置
 $color3 = ImageColorAllocate($im, mt_rand(0,100), mt_rand(0,100), mt_rand(0,100)); //字符随即颜色
 ImageChar($im, $fontsize, $j, 3, $code, $color3); //绘字符
 $randcode .= $code; //逐位加入验证码字符串
 }
 $_SESSION[&#39;yzcode&#39;] = $randcode;
 Imagegif($im);
 ImageDestroy($im);
}
?>

Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study.

Related recommendations:

PHP method to generate color QR code based on QRCODE

PHP implements login verification code function and calling method

PHP method to get the first image of an article on the website as a thumbnail

The above is the detailed content of php file upload management system. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP email sending caseNext article:PHP email sending case