当你按下了提交按钮后,文件将会从你的计算机上传到服务器的临时目录下。
在临时目录下的文件名为一个临时文件。应该使用file字段的name值来访问它,在这里为$myfile。
真正的文件名使用file字段的name值加上"_name"来访问它,在这里为$myfile_name。
使用copy()函数,将临时文件$myfile拷贝到指定目录下,拷贝后的文件名为$myfile_name。
完成后不要忘了删除临时文件,不然你会有许多你不想要的文件。
另外你对你指定的目录要有读写权限。在这里是/usr/local/apache/htdocs/file/
<html>
<head>
<title>保存文件</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta http-equiv="refresh" content="3"; url=index.php"> //3秒钟后自动跳转到index.php
</head>
<body bgcolor="#FFFFFF">
<center>
<?
$db=mysql_connect("$hostname","$user","$password")or die("无法连接数据库");
mysql_select_db("yourdatabase",$db) or die("无法打开数据库");
If($myfile != "none") {
copy($myfile,"/usr/local/apache/htdocs/file/$myfile_name");//把临时文件copy到你制定的目录。
unlink($myfile);//删除临时文件
$sql="insert into upfile (id,filename,fileshow,date,uploader,type ) values (@#@#,@#$myfile_name@#,@#$fileshow@#,@#$date@#,@#$uploader@#,@#$type@#)";
$result=mysql_query($sql);
echo "上传文件成功,三秒后返回主页面";
}
else {
echo"上传文件不成功,三秒后返回主页面";
}
?>
</center>
</body>
</html>
//sorry,各位,忘记说啦,你要更改php.ini文件的配置
把upload_tmp_dir=/tmp前面的;去掉,并在后面加上你希望使用的临时文件存放的目录。
还有要把upload_max_filesize =100M前面的;去掉,然后在后面加上你希望用户能上载的文件的最大的大小。
我用的是100M,够了吧。^_^。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/