因为刚开始学php,所以写的不是太好
html页面
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form action="uploads.php" enctype="MULTIPART/FORM-DATA" method="post">
选择要上载的文件 <input type="file" name="file" id="file"/>
<br />
<input type="submit" name="name" value="确定"/>
</form>
</body>
</html>
php页面
<?php
//判断上传文件出现的错误
if ($_FILES["file"]["error"] > 0)
{
//这里的错误可以去php帮助文档里查,我这里就不写了
echo "错误: " . $_FILES["file"]["error"] . "<br />";
}
else
{
//设定能够上传文件的类型
$typechar=array("jpg","gif","bmp","jpeg","png");
//设定文件保存的位置
$Address="img//";
//获取文件后缀名函数
function filed($fileType)
{
//strrchr()函数的作用是:查找一个字符串在另一个字符串中末次出现的位置,
//并返回从字符串中的这个位置起,一直到字符串结束的所有字符
//string substr(string string, int start, int [length]);
//本函数将字符串 string 的第 start 位起的字符串取出 length 个字符。
//若 start 为负数,则从字符串尾端算起。若可省略的参数 length 存在,
//但为负数,则表示取到倒数第 length 个字符
$fileType=substr(strrchr($fileType,"."),1);
return $fileType;
}
//随机起文件的临时名称,也就是保存文件的名称
function random($length)
{
$hush='CR-';
$chars="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
//strlen()获取字符串的长度
$max=strlen($chars)-1;
//mt_srand()对随机数播种子,php4。2.0后可以不用写
mt_srand((double)microtime()*1000000);
//循环获得临时文件名
for($i = 0; $i < $length; $i++)
{
//mt_rand()随机函数
$hush .= substr($chars,mt_rand(0, $max),1);
}
return $hush;
}
//判断上传文件的类型
$a=filed($_FILES['file']['name']);
//strtolower()将值转换为小写
//in_array -- 检查数组中是否存在某个值
if(!in_array(strtolower($a),$typechar))
{
//implode将数组转换为字符串,并且每个值之间用‘,’隔开
$txet=implode(',',$typechar);
echo "请上传以下格式的文件:".$txet."<br>";
echo "<center><a href='Upload.php'>返回 重新上传</a></center>";
}
else
{
//explode以‘.’号来分割字符串,返回数组.注“.”号必须用“”引起来
//$filename=explode(".",$_FILES["file"]["name"]);
$name=random(10);
//文件现存地址
$name=$Address.$name.'.'.filed($_FILES['file']['name']);
//move_uploaded_file -- 将上传的文件移动到新位置
//$_FILES['file']['tmp_name']查看上传文件是否合法,不合法返回FALSE
if (move_uploaded_file($_FILES['file']['tmp_name'],$name))
{
//输出图片预览
echo "<center>您的文件已经上传完毕 上传图片预览: </center><br><center><img src='$name'></center>";
echo"<br><center><a href='Upload.php'>继续上传</a></center>";
}
else
{
echo "上传失败!";
}
}
}
?>