当前位置:首页 > 利用PHP上传文件

利用PHP上传文件

点击次数:1336  更新日期:2011-01-03
\n

这是一个经典范例,它实现了最长用功能,稍加修改就能定制为强大的上传程序.


\n<html><head>
\n<title>上载文件表单</title></head>
\n<body>
\n<form enctype=”multipart/form-data” action=”" method=”post”>
\n请选择文件: <br>
\n<input name=”upload_file” type=”file”><br>
\n<input type=”submit” value=”上传文件”>
\n</form>
\n</body>
\n</html>

\n

<?
\nupload_file
=_FILES[\'upload_file\'][\'tmp_name\'];
\n
upload_file_name=_FILES[\'upload_file\'][\'name\'];

\n

if(upload_file){
\n
file_size_max = 1000*1000;// 1M限制文件上传最大容量(bytes)
\n
store_dir = “d:/”;// 上传文件的储存位置
\n
accept_overwrite = 1;//是否允许覆盖相同文件
\n// 检查文件大小
\n
if (upload_file_size > file_size_max) {
\necho
“对不起,你的文件容量大于规定”;
\nexit;
\n}

\n

// 检查读写文件
\n
if (file_exists(store_dir . upload_file_name) && !accept_overwrite) {
\nEcho
“存在相同文件名的文件”;
\nexit;
\n}

\n

//复制文件到指定目录
\n
if (!move_uploaded_file(upload_file,store_dir.upload_file_name)) {
\necho
“复制文件失败”;
\nexit;
\n}

\n

}

\n

Echo “<p>你上传了文件:”;
\necho
_FILES[\'upload_file\'][\'name\'];
\necho
“<br>”;
\n
//客户端机器文件的原名称。

\n

Echo “文件的 MIME 类型为:”;
\necho
_FILES[\'upload_file\'][\'type\'];
\n
//文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。
\n
echo “<br>”;

\n

Echo “上传文件大小:”;
\necho
_FILES[\'upload_file\'][\'size\'];
\n
//已上传文件的大小,单位为字节。
\n
echo “<br>”;

\n

Echo “文件上传后被临时储存为:”;
\necho
_FILES[\'upload_file\'][\'tmp_name\'];
\n
//文件被上传后在服务端储存的临时文件名。
\n
echo “<br>”;

\n

Erroe=_FILES[\'upload_file\'][\'error\'];
\nswitch(
Erroe){
\n case
0:
\n Echo
“上传成功”; break;
\n case
1:
\n Echo
“上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值.”; break;
\n case
2:
\n Echo
“上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。”; break;
\n case
3:
\n Echo
“文件只有部分被上传”;break;
\n case
4:
\n Echo
“没有文件被上传”;break;
\n}
\n
?>

\n