您的位置:首页 > 编程语言 > PHP开发

7天入门php-文件上传

2016-10-03 21:24 489 查看
文件上传的基本方法实践:

1、submitMsg.php:文件上传表单

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>留言与文件上传</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />
</head>
<body>
<form id="formForMsg" method="POST" enctype="multipart/form-data" action="
resolveSubmit.php">
<fieldset>
<legend>上传文件</legend>
<div><span>主题:</span><input type="text" name="msgTheme" /></div>
<div><span>内容:</span><textarea name="msgContent"></textarea></div>
<div><span>附件:</span><input type="file" name="file"></div>
<input class="submit" type="submit" value="留言" />
</fieldset>
</form>
</body>
</html>
界面:



2、resolveSubmit.php:接收文件并保存

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>处理表单的php</title>
<style type="text/css">
#showMsg,#showMsg2{
width: 400px;
max-width: 400px;
min-height: 100px;
margin:0 auto;
}
</style>
</head>
<body>
<!--将主题与文本内容写入txt文件-->
<?php
$fop=fopen("leaveMsgs.txt", 'w+');
fwrite($fop, $_POST['msgTheme'].":".$_POST['msgContent']."\n");
while(($jud=fgets($fop,1024))!==false){
echo $jud."成功";
}
fclose($fop);
?>
<!--展示主题与内容及附件上传结果-->
<div id="showMsg">
<fieldset>
<legend>主题内容</legend>
<h3><?php echo $_POST['msgTheme']?></h3>
<p><?php echo $_POST['msgContent']?></p>
</fieldset>
</div>
<div id="showMsg2">
<fieldset>
<legend>上传附件</legend>
<?php
if ((($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")))
{
echo "上传: " . $_FILES["file"]["name"] . "<br />";
echo "类型: " . $_FILES["file"]["type"] . "<br />";
echo "长度: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "临时文件: " . $_FILES["file"]["tmp_name"]."<br/>";
echo "错误情况:".$_FILES['file']['error']."<br/>";
$uploads_dir = './testf';
$tmp_name = $_FILES["file"]["tmp_name"];
$name = $_FILES["file"]["name"];
echo "保存结果:".move_uploaded_file($tmp_name, "$uploads_dir/".$name);
}
else
{
echo "文件不满足要求!";
}
?>
</fieldset>
</div>
</body>
</html>
结果:


3、小结

注意事项:

1、上传文件时,entype必须为multipart/form-data。

2、上传文件只能使用POST ,使用GET 会出错(已验)。

移动文件函数move_upload_file()语法:

move_uploaded_file(file,newloc)


file:string变量,必需,将移动的文件名(全名)。对于上传文件,即临时文件名$_FILES['filename']['tmp_name']。

newloc:string变量,必需,将移动到的具体位置(包含文件全名)。对于不改变文件名的文件上传,即$_FILES['filename']['name']。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php上传文件