//upload.html文件
<!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>Adminstration -upload new files</title>
</head>
<body>
<h1>Upload new news files </h1>
<form action ="upload.php" method ="post" enctype="multipart/form-data" /> //表单
<div>
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
<label for="userfile" >Upload a file : </label>
<input type="file" name="userfile" id="userfile" />
<input type="submit" value="Send File" />
</div>
</form>
</body>
</html>
//upload.php文件
<?php
if($_FILES['userfile']['error']>0)
{
echo 'problem';
exit;
}
if($_FILES['userfile']['type']!='text/plain')
{
echo 'problem: file is not plain text';
exit;
}
//put the file
$upfile='uploads\\'.$_FILES['userfile']['name']; //之前有"\\"的问题,在linux和windows 下面的路径不一样。
if(is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if(! move_uploaded_file($_FILES['userfile']['tmp_name'],$upfile))
{
echo 'problem : could not move tile to destination directory';
exit;
}
}
else
{
echo 'problem : possible file upload attack.Filename:';
echo $_FILES['userfil']['name'];
exit;
}
echo 'file uploaded successfully<br><br>';
$contents = file_get_contents($upfile);
$contents=strip_tags($contents);
file_put_contents($_FILES['userfile']['name'],$contents);
echo '<p>preview of uploaded file contents:<br><hr/>';
echo nl2br($contents); //显示文件内容在网页上面。函数是nl2br.其中的'l'是字符不是数字。
echo '<br/<hr/>';
?>
路径问题:
unix系统下,根目录是/ , 而在Windows系统中通常都是C:\,如果是反斜线 \ 的话,就要用转义字符
如:
$fp=fopen("$document_root\\..\\orders\\orders.txt",w);