一、创建一个文件上传表单
<html>
<body>
<form action="upload_file.php" method="post" enctype="multipart/form-data">
//<form>标签的enctype属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用“multipart/form-data”
<label for="file">Filename:</label>
<input type="file" name="file" id="file">
//<input>标签的type="file"属性规定了应该把输入作为文件来处理。
</br>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
二、创建上传脚本
<?php
if($_FILES["file"]["error"]>0)
{
echo "Error:" .$_FILES["file"]["error"]."<br/>";
}
else
{
echo "Upload:" .$_FILES["file"]["name"]."<br/>";//被上传文件的名称
echo "Type:" .$_FILES["file"]["type"]."<br/>";//被上传文件的类型
echo "Size:" .($_FILES["file"]["size"]/1024)."Kb<br/>";//被上传文件的大小,以字节计
echo "Stored in:".$_FILES["file"]["tmp_name"];//存储在服务器的文件的临时副本的名称
}
?>
三、上传限制,在下例中,增加了对上传文件的限制,用户只能上传.gif或.jpeg文件,文件大小必须小于20kb
<?php
if((($_FILES["file"]["type"]=="iamge/gif")
||($_FILES["file"]["type"]=="image/jpeg")
||($_FILES["file"]["type"]=="iamge/pjpeg"))
&&($_FILES["file"]["size"]<20000))
{
if($_FILES["file"]["error"]>0)
{
echo "Error:".$_FILES["file"]["error"]."<br />";
}
else
{
echo"Upload:".$_FILES["file"]["name"]."<br />";
echo"Type:".$_FILES["file"]["type"]."<br />";
echo"Size:".($_FILES["file"]["size"]/1024)."Kb<br />";
echo"Stored in:".$_FILES["file"]["tmp_name"];
}
}
else
{
echo"Invalid file";
}
?>
四、保存被上传的文件
<?php
if((($_FILES["file"]["type"])== "iamge/gif")
|| ($_FILES["file"]["type"] == "iamge/jpeg")
||($_FILES["file"]["type"] == "image/pjpeg"))
&&(&_FILES["file"]["size"]<20000))
{
if($_FILES["file"]["error"]>0)
{
echo "Return Code:".$_FILES["file"]["error"]."<br />";
}
else
{
echo"Upload:".$_FILES["file"]["name"]."<br />";
echo"Type:".$_FILES["file"]["type"]."<br />";
echo"Size:".($_FILES["file"]["size"]/1024)."Kb<br />";
echo"Temp file:".$_FILES["file"]["tmp_name"]."<br />";
if(file_exists("upload/".$_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"]."already exists.";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/".$_FILES["file"]["name"]);
echo"Stored in:"."upload/".$_FILES["file"]["name"];
}
}
}
else
{
echo"Invalid file";
}
?>