使用php上传纯文本的代码

2013 年 9 月 10 日5580

使用php上传纯文本的代码

  文件上传的基本思路是:

  1.判断上传是否出错,具体是什么错误。可以通过$_FILES['userfile']['error'] 获得错误信息。

  2.判断上传的文件类型是否匹配,可以通过$_FILES['userfile']['type'] 取得信息。

  3.如果在php的配置文件里没有修改默认临时存放文件的地址,那么上传后文件将存到系统默认的一个文件夹,这个文件夹系统会隔一段时间清理一次,因此,最后改变存储路径,保存上传的文件。

  前台页面:


<html>
<head>
<title>Adminupload</title>
</head>
<body>
<h1>Uploadnewfiles</h1>
<formenctype="multipart/form-data"action="upload.php"method="POST">
<inputtype="hidden"name="MAX_FILE_SIZE"value="1000000">
<p>
Uploadthisfile:<inputtype="file"name="userfile"maxlength="50">
<inputtype="submit"value="上传">
</p>
</form>
</body>
</html>

后台代码:


<html>
<head>
<title>资料上传Upload</title>
</head>
<body>
<h1>Uploadingfile</h1>
<?php
/*
$files['userfile']['error']的结果将输出0,1,2,3,4,5.其中0表示没有错误!
*/
if($_FILES['userfile']['error']>0){
echo'Problem:';
switch($_FILES['userfile']['error'])
{
case1:echo'Fileexceededmaxinphi.ini!';break;//1表示文件超过php配置里的大小限制
Case2:echo'Fileexceededmax_file_size';break;//2表示超过最大限制
case3:echo'Fileonlypartiallyuploaded';break;//3表示部分上传
case4:echo'Nofileupload';break;//4表示没有上传
}
exit;
}

/*
如果文件类型非纯文本,输出提示*/
if($_FILES['userfile']['type']!='text/plain'){
echo'Problem:fileisnotplaintext';
exit;
}


/*
转移文件路径,转移失败,输出错误
*/
$upfile='/uploads';//存储路径

if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
if(!move_uploaded_file($_FILES['userfile']['tmp_name'],$upfile)){
echo'Problemcouldnotmovefiletodestinationdirectory';
exit;
}
}
else
{
echo'Problem:possiblefileuploadattackfile:';
echo$_FILES['userfile']['name'];
exit;
}

echo'Fileuploadsucessfully<br/>';

//输出上传的文本的内容
$contents=file_get_contents($upfile);
$contents=strip_tags($contents);//清除html或php标志
file_put_contents($_FILES['userfile']['name'],$contents);

echo'<p>Previewofuploadedfilecontens:<br/></p>';
echonl2br($contents);
echo'<br/><hr/>';
?>
</body>
</html>

编辑推荐:

1. 一段典型的PHP程序都包含那些内容呢?

2. PHP教程:PHP函数简单中文说明

3. PHP导入导出Excel的方法

相关文章

关键词: 技巧

责任编辑:谢妍妍

专题推荐

原创文章

微博互动

白皮书

0 0