set rs=server.CreateObject("adodb.recordset")
rs.open "select * from prod where id="&request("id"),conn,1,3
if rs("show") then
rs("show")=false
else
rs("show")=true
end if
rs.update
response.Redirect "viewprod.asp"
end if%>
<!--这段放在文件头 -->
<%if rs("show") then%><img src="open.jpg"><%else%><img src="open.jpg"><%end if%></a>
<input name="更改" type="button" id="更改" onclick="window.location.href='viewprod.asp?id=<%=rs("id")%>&action=updateshow'">
是的 你需要把数据库里面的二进制的图片元组进行修改 或者删除除再插入新的数据一般以二进制存放到数据库的图片就不需要存放到文件夹了 文件夹有没有这张图片都会显示
你的语句是对的,你可以自己验证,更新UPDATE之后SELECT出数据库字段的值,显示出来人工查看是否异常。对你这个基本正确的语句,我有两条意见供你参考:一是路劲分隔符号问题,这样的语句里面有\,写在程序里面(不是数据客户端查询)的时候,类C语言的语言(例如PERL、PHP、JAVA等)对字符串里面的\会进行转义,例如\n表示的是回车,对于这样的语言环境,我们要用\\来代替查询语句里面的路径分隔符;当然,某些早期在UNIX平台起家的语言(例如PERL、PHP等),可以使用UNIX的路径分隔符/来代替WINDOWS的\,而且程序代码能在WINDOWS下正确运行。二是BLOB对象问题,如果字段Clicense是一个字符串(也称文本)类,例如CHAR、VARCHAR、TEXT等,那么这个语句只是把文件名存入数据库,显示的图片的时候取出文件名还需要读取文件内容,如果需要把文件内容存入数据库,那么字段类型需要为对象,而且语句也稍有不同。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)