如何判断上传到数据库里的文件是否为规定文件(自己写了判断语句了,可是没用,还请大家帮忙改错)..

ChneChen 2004-01-08 10:25:07
为了判断上传到数据库里的文件是否为规定文件,自己在参数上传页开始处加上了:

if right(lcase(filename), 4) <> ".jpg" then
response.write "只能上传 jpg 图片"
response.end
end if
用来判断,可是加上后不论上传什么类型的文件总是提示:只能上传 jpg 图片.
(不用这部分文件上传正常,只是缺点是可以上传任何类型的文件,)
(另:上传的文件是以二进制行式保存在数据库中的。)
自己想,应该是上传的文件的名字没有正确读取的关系,那自己应该是在什么地方写错了代码呢?

(附:上传文件选择页代码)
<html>
<body>
<table width="499" border="0" align="center">
<tr>
<td>
<center>
<form name="mainForm" enctype="multipart/form-data" action="upload_picture.asp" method=post>
<!-- 请求表单信息的编码类型必须使用enctype="multipart/form-data"-->
<input name="mefile" type="file" accept="image/*" >
<!-- accept将对话框中出现的文件类型限制为图文件 -->
<input type=submit name=ok value="上传">
</form>
</center>
</td>
</tr>
</table>
</body>
</html>



--------------------
曾经发过一帖,可惜没能解决,那帖原来写得有点乱,如果需要的话,大家可以参考
http://expert.csdn.net/Expert/topic/2624/2624958.xml?temp=.6022455
...全文
52 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qwater 2004-01-09
  • 打赏
  • 举报
回复
if right(lcase(filename), 4) <> ".jpg" then
大小写问题,你的图片文件后缀是JPG
divids 2004-01-09
  • 打赏
  • 举报
回复
反正如果取的文件名是正确的你现在写的判断是没有什么问题的

估计是你用FSO的时候出了问题
divids 2004-01-09
  • 打赏
  • 举报
回复
你觉得取的文件名有问题,为什么不先把取得的文件名输出来看看呢?

<%response.write(filename)%>

用fso里面的getfilename(path)可以直接取到文件或文件夹的名称啊
nik_Amis 2004-01-09
  • 打赏
  • 举报
回复
up
ChneChen 2004-01-09
  • 打赏
  • 举报
回复
RE:
if right(lcase(filename), 4) <> ".jpg" then
大小写问题,你的图片文件后缀是JPG

---------
应该不是大小写问题,自己仔细检查过上传的文件了,的确是.jpg而不是.JPG
ChneChen 2004-01-08
  • 打赏
  • 举报
回复
首先道声谢谢,但不好意思的是,自己需要的并不是如何上传到数据库里的文件的ASP代码。

自己只想了解的是为什么自己的判断语句没起到作用?自己认为应该是上传的文件的名字没有正确读取的关系,那不知应该如何才能正确读出上传的文件的名字.?
自己在想,介绍如何利用无组件上传到数据库里的文件的ASP代码很多,但,下了回来不能理解应该说没有什么意义.自己觉得自己修改的这个代码应该没什么大错,但关键是无法正确读出上传的文件的名字..自己很希望哪位朋友能在这一点上帮帮忙...

(既然错了,也至少要知道是错在哪了..)
yangzixp 2004-01-08
  • 打赏
  • 举报
回复
看我的:


<%
Response.Buffer = TRUE
%>
<!--#include file="../inc/update/upload.asp"-->
<!--#include file="../inc/function.asp"-->
<%
useron=session("tbuser")
call chkmember()
%>
<HTML>
<HEAD>
<TITLE>插入图片</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<LINK href="/inc/css/texb_original.css" type=text/css rel=stylesheet>
</HEAD>

<script language="javascript">


function inputupdate() {

if (puturl.putimg.value=="")
{ alert("请输入图片路径");
puturl.putimg.focus();
return false;
}
var tmpstr;
tmpstr=puturl.putimg.value;
var tmpstr1=tmpstr.substring(tmpstr.lastIndexOf(".")+1,tmpstr.length);
if ((tmpstr1!="jpg") && (tmpstr1!="gif") && (tmpstr1!="JPG") && (tmpstr1!="GIF") && (tmpstr1!="bmp") && (tmpstr1!="BMP") && (tmpstr1!="png") && (tmpstr1!="PNG"))
{
alert ("你选择的文件格式不正确!");
puturl.putimg.focus();
return false;
}


var callerWindowObj = dialogArguments;
callerWindowObj.sColor = document.puturl.putimg.value;
callerWindowObj.update();
callerWindowObj.pimg1LocalClick();
self.close();
}


function upsub() {
if (imgup.nlFile.value=="")
{ alert("请选择一张图片再上传!");
imgup.nlFile.focus();
return false;
}

var tmpstr;
tmpstr=imgup.nlFile.value;
var tmpstr1=tmpstr.substring(tmpstr.lastIndexOf(".")+1,tmpstr.length);
if ((tmpstr1!="jpg") && (tmpstr1!="gif") && (tmpstr1!="JPG") && (tmpstr1!="GIF") && (tmpstr1!="bmp") && (tmpstr1!="BMP") && (tmpstr1!="png") && (tmpstr1!="PNG"))
{
alert ("你选择的文件格式不正确!");
imgup.nlFile.focus();
return false;
}

document.imgup.sAction.value="请稍等.";
return true;
}

</script>



<BODY leftMargin=0 topMargin=0 marginheight="0" marginwidth="0" bgcolor=#cccccc>

<%
if request.serverVariables("request_method")<>"POST" then
%>

<TABLE cellSpacing=0 cellPadding=8 width="100%" border=0>
<FORM onsubmit="return upsub()"
action="UpdateImg.asp" method=post name=imgup encType=multipart/form-data>
<TBODY>
<TR align="center">
<TD> <FIELDSET><LEGEND>上传图片</LEGEND> <br>
<INPUT type=file size=45
name=nlFile onChange="pimg1LocalClick()">   <INPUT type=submit value=上传 name=sAction>
<br><font color=#444444>请注意:只允许上传gif/jpg/png/bmp格式,最大为1M的图片   </font>
<br>
<BR>
</FIELDSET></TD></FORM>
</TR>
<TR><form action="#" name="puturl">
<TD align=center><FIELDSET><LEGEND>直接输入图片地址</LEGEND><br>
<INPUT type=text size=45 name="putimg" onKeyUp="pimg1LocalClick2()"> <INPUT onclick="inputupdate();" type=button value=" 确 定 ">   <INPUT type=reset value=取消> <br><br>
</FIELDSET>
</TD></FORM></TR>
<script language="javascript">
function pimg1LocalClick()
{
var cForm = document.myform;
document.myform.pimg.src = document.imgup.nlFile.value;
}
function pimg1LocalClick2()
{
var cForm = document.myform;
document.myform.pimg.src = document.puturl.putimg.value;
}
function imageDelete()
{
var cForm = document.myform;
cForm.pimg.src = "/images/blank.gif";
document.myform.theimg.value = "";
}
</script>
<tr><form name=myform><td><FIELDSET><LEGEND>图片预览</LEGEND>
                <img src="/images/blank.gif" width=90 height=70 border=1 align="absmiddle" name="pimg">
<br>
<br></td></form></tr>
</FIELDSET>
</TABLE>
<%
else
dim uperr
uperr=""


set upload=new upload_5xSoft
dim upload,file,bfilename,b2filename,formName,bPath,news_pic,ffname


bPath="/images/userup/" & useron & "/max/" '产品大图路径
mPath="/images/userup/" & useron & "/min/" '产品小图路径
nPath="/images/userup/" & useron & "/"
set fso = server.CreateObject("Scripting.FileSystemObject")
if not fso.FolderExists(server.MapPath(nPath)) then
FSO.CreateFolder(server.MapPath(nPath))
end if
if not fso.FolderExists(server.MapPath(bPath)) then
FSO.CreateFolder(server.MapPath(bPath))
end if
if not fso.FolderExists(server.MapPath(mPath)) then
FSO.CreateFolder(server.MapPath(mPath))
end if

set file=upload.file("nlFile") '上传产品图片
'//ffname=upload.form("news_show")
'//检查文件大小
if file.FileSize<=0 then ''如果 FileSize > 0 说明有文件数据
uperr=uperr & "很抱歉,所传文件大小为0,不符合规定!<br>"
end if
if file.FileSize>1048576 then ''如果超过1M
uperr=uperr & "很抱歉,所传文件大小不能超过1M!<br>"
end if

strFileName=file.FileName
strExtName = LCase(Right(strFileName, Int(Len(strFileName)-InstrRev(strFileName, ".")+1)))

'//判断文件格式
if strExtName<>".gif" and strExtName<>".jpg" and strExtName<>".png" and strExtName<>".bmp" and strExtName<>".GIF" and strExtName<>".JPG" and strExtName<>".PNG" and strExtName<>".BMP" then
uperr=uperr & "很抱歉,所传文件格式不对,只允许上传格式为jpg\gif\png\bmp的图片<br>"
end if

if uperr="" or isnull(uperr) then
bfilename=year(now) & month(now) & Day(now) & Hour(now) & Minute(now) & Second(now) & strExtName
b2filename=bPath & bfilename
b3filename=mPath & year(now) & month(now) & Day(now) & Hour(now) & Minute(now) & Second(now) & ".jpg"
file.SaveAs Server.mappath(b2filename) ''保存文件

'//开始生成缩略图
Dim demo
Set demo = Server.CreateObject("sjCatSoft.Thumbnail")
On Error resume next
demo.SourceFile = Server.MapPath(b2filename)
demo.OutFileType = 1
demo.DestFile = Server.MapPath(b3filename)
demo.ByRatio = false
demo.Rate = 80
demo.OutPicHeight=85
demo.OutPicWidth=100
demo.Execute
Set demo = nothing
if Err<>0 then Response.write err.description
%>
<script language="javascript">
upupdate()

function upupdate() {
var callerWindowObj = dialogArguments;
callerWindowObj.sColor = "<%=b3filename%>";
callerWindowObj.update();
callerWindowObj.pimg1LocalClick();
self.close();
}
</script>
<%
else
response.write "<center><font color=red><br><br>"&uperr&"<p><input type=button value='点此返回' onclick=javascript:document.location.href='UpdateImg.asp'></font></center>"
end if





end if
%>
</BODY></HTML>

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧