文件是在客户端,php运行在服务器端。
服务器端想知道客户端的某个文件的的信息,
只有客户端提交,服务器处理后,
同时也会再服务器端产生临时文件。
同时服务器才会确定这个提交过来的文件的相关信息,诸如大小。php.ini里面的upload_file_max是限制文件上传大小的(还有几个相关的配置
你可以在本版找一下)就是说,大于这个最大值的文件,服务器php引擎无法处理
既然没法传上去这个文件,自然你的php语句也没法执行。客户端和服务器交互,总是客户端通过点击按钮或者传url参数,通过get or post方法把本地信息传到服务器,服务器的脚本引擎对传来的数据进行分析,设置好环境变量,然后脚本开始执行的吧?至于$_FILES['userfile']['size']变量也不一定是非得用来控制上传大小的吧
手册中说了确实是文件的大小,一般,如果作文件下载,我可以把这个信息入库
这样下载的时候,可以设置好相应的header吧。“
其他的在文件上传前就可以判断文件大小的方法或函数,但我却找不知道!!
“
这句,我还确实不知道有这样的函数。
服务器端想知道客户端的某个文件的的信息,
只有客户端提交,服务器处理后,
同时也会再服务器端产生临时文件。
同时服务器才会确定这个提交过来的文件的相关信息,诸如大小。php.ini里面的upload_file_max是限制文件上传大小的(还有几个相关的配置
你可以在本版找一下)就是说,大于这个最大值的文件,服务器php引擎无法处理
既然没法传上去这个文件,自然你的php语句也没法执行。客户端和服务器交互,总是客户端通过点击按钮或者传url参数,通过get or post方法把本地信息传到服务器,服务器的脚本引擎对传来的数据进行分析,设置好环境变量,然后脚本开始执行的吧?至于$_FILES['userfile']['size']变量也不一定是非得用来控制上传大小的吧
手册中说了确实是文件的大小,一般,如果作文件下载,我可以把这个信息入库
这样下载的时候,可以设置好相应的header吧。“
其他的在文件上传前就可以判断文件大小的方法或函数,但我却找不知道!!
“
这句,我还确实不知道有这样的函数。
这个$_FILES['userfile']['size']读取的是服务器端的文件的大小
if(!empty($Submit))
{
if($photofile_size>3000000)die("图片太大了,要上传的文件必须小于3000KB");
$imagename = explode(".",$photofile_name);
if((stristr($imagename[1],"jpg"))||(stristr($imagename[1],"gif")))
{
$stemp = date("YmjHis");
$upload_name= "data/$stemp.$imagename[1]";
//文件存放在 data目录下
//文件名由上传时间确定,目的是防止重名文件被覆盖。
copy($photofile,$upload_name);
print "上传成功";
exit;
}
die("只能上传JPG或GIF文件");
}
print "<form method=post enctype='multipart/form-data'>";
print "<table width=400 border=1 cellspacing=0 cellpadding=3 bordercolorlight=#B5E1F7>";
print "<tr><td align=center bgcolor=#B5E1F7><b><font color=#000066>上传照片</font></b></td>";
print "<tr><td><input type=file name=photofile size=30 class=text><br>";
print "上传的图片大小不能超过3000KB </td></tr>";
print "<tr><td align=center><input type=submit name=Submit class=text value='上 传'></td></tr></table></form>";
?>
if($img_size>3000)
{
header("location:error.shtml?你的图片文件过大(应小于80K),请另选");
exit();
}