我要编一个文件上传的程序,如何先判断要上传的文件的大小再copy? 肯定是要传上来之后才能判断大小的,要不然就在php.ini里把上传文件大小限制在一个比较小的数值上 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要多看文件操作函数库,filesize <HTML><HEAD><SCRIPT>function getFileSize (fileName) { if (document.all) {window.oldOnError = window.onerror; window.onerror = function (err) {if (err.indexOf('utomation') != -1) {alert('没有访问文件的权限'); return true; } else return false; }; var fso = new ActiveXObject('Scripting.FileSystemObject'); var file = fso.GetFile(fileName); window.onerror = window.oldOnError; return file.Size; }}</SCRIPT></HEAD><BODY><FORM NAME="formName"><INPUT TYPE="file" NAME="fileName"><BR><INPUT TYPE="button" VALUE="查看文件字节大小" ONCLICK="alert(getFileSize(this.form.fileName.value))"><BR></FORM></BODY></HTML> $_FILES['userfile']['size']取的是临时文件的大小。根据Http协议的机制来看,你只能判断临时文件的大小啊。if($_FILES['userfile']['size']<1000){ copy(...);} 给你段判断文件大小的代码:<HTML><HEAD><SCRIPT>function getImageDimension (imgURL, loadHandler) { var img = new Image();img.onload = loadHandler;if (document.layers && location.protocol.toLowerCase() != 'file:' && navigator.javaEnabled()) netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead' ); img.src = imgURL;}function getFileSize (fileName) { if (document.layers) {if (navigator.javaEnabled()) { var file = new java.io.File(fileName); if (location.protocol.toLowerCase() != 'file:') netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead' );return file.length(); } else return -1; }else if (document.all) { window.oldOnError = window.onerror;window.onerror = function (err) { if (err.indexOf('utomation') != -1) { alert('file access not possible');return true;} else return false; }; var fso = new ActiveXObject('Scripting.FileSystemObject'); var file = fso.GetFile(fileName);window.onerror = window.oldOnError; return file.Size; }}function showImageDimensions () { alert(this.width + 'x' + this.height);}</SCRIPT><SCRIPT>function checkImageDimensions (fileName) {var imgURL = 'file:///' + fileName; getImageDimension(imgURL, showImageDimensions);}</SCRIPT></HEAD><BODY><FORM NAME="formName"><INPUT TYPE="file" NAME="fileName"><BR><INPUT TYPE="button" VALUE="check file size" ONCLICK="alert(getFileSize(this.form.fileName.value))"></FORM></BODY></HTML> 但必需客户端打开IE选项中的安全属情中的对没有标记为安全的ActiveX控件进行初始化和执行脚本具体步骤:IE浏览器-〉工具-〉Internet选项-〉安全-〉自定义级别将这一项:对没有标记为安全的ActiveX控件进行初始化和执行脚本 启用即可 phpstudy eclipsePHP studio运行时提示:启动期间发生了内部错误。请问怎么回事? 这样的一段字符串如何截开? header()调用时出错。 紧急求教: php+com+access问题. 其它都正常,就是不能更新记录. 奇怪 同一个函数,同样的输入,在IE和FF下面两中结果 如何获取输入框title 的值; 关于复选框的问题,谢谢 关于字体联想的问题!!!! php数据库连接错误 php中验证数据合法性的问题 么样让打开的页面在永远在最上面?
<SCRIPT>function getFileSize (fileName) {
if (document.all) {
window.oldOnError = window.onerror;
window.onerror = function (err) {
if (err.indexOf('utomation') != -1) {
alert('没有访问文件的权限');
return true;
}
else
return false;
};
var fso = new ActiveXObject('Scripting.FileSystemObject');
var file = fso.GetFile(fileName);
window.onerror = window.oldOnError;
return file.Size; }}
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="formName"><INPUT TYPE="file" NAME="fileName"><BR>
<INPUT TYPE="button" VALUE="查看文件字节大小" ONCLICK="alert(getFileSize(this.form.fileName.value))"><BR>
</FORM></BODY>
</HTML>
取的是临时文件的大小。根据Http协议的机制来看,你只能判断临时文件的大小啊。
if($_FILES['userfile']['size']<1000){
copy(...);
}
<HTML><HEAD>
<SCRIPT>function getImageDimension (imgURL, loadHandler) {
var img = new Image();
img.onload = loadHandler;
if (document.layers && location.protocol.toLowerCase() != 'file:' && navigator.javaEnabled())
netscape.security.PrivilegeManager.enablePrivilege( 'UniversalFileRead'
); img.src = imgURL;}
function getFileSize (fileName) {
if (document.layers) {
if (navigator.javaEnabled()) {
var file = new java.io.File(fileName);
if (location.protocol.toLowerCase() != 'file:')
netscape.security.PrivilegeManager.enablePrivilege(
'UniversalFileRead' );
return file.length(); }
else return -1; }
else if (document.all) {
window.oldOnError = window.onerror;
window.onerror = function (err) {
if (err.indexOf('utomation') != -1) {
alert('file access not possible');
return true;
}
else return false; };
var fso = new ActiveXObject('Scripting.FileSystemObject');
var file = fso.GetFile(fileName);
window.onerror = window.oldOnError;
return file.Size; }}
function showImageDimensions () {
alert(this.width + 'x' + this.height);}
</SCRIPT>
<SCRIPT>
function checkImageDimensions (fileName) {
var imgURL = 'file:///' + fileName;
getImageDimension(imgURL, showImageDimensions);}
</SCRIPT>
</HEAD
><BODY>
<FORM NAME="formName"><INPUT TYPE="file" NAME="fileName"><BR>
<INPUT TYPE="button" VALUE="check file size"
ONCLICK="alert(getFileSize(this.form.fileName.value))"></FORM></BODY>
</HTML>
具体步骤:
IE浏览器-〉工具-〉Internet选项-〉安全-〉自定义级别
将这一项:对没有标记为安全的ActiveX控件进行初始化和执行脚本 启用即可