日期:2014-05-16  浏览次数:20937 次

如何写这样的ASP页面:能直接显示出图片
原先的情况:
之前我们显示图片用的是这样的语句:
<img src="http://www.sample.com/sample.jpg"/>
这里直接把图片地址写到src属性里面了,可以显示图片。

新的需求:
1:我们要统计图片被访问的次数 (这个需求暂时不用实现)
2:通过在url里面加参数,就能显示不同的图片 (这个需求很急)

基于这样的需求,原先的显示方式肯定不行,现在我知道用asp页面可以实现这样的需求,实现结果类似以下语句:
<img src="http://www.sample.com/sample.asp"/>
这样当我要显示图片1的时候,可以写成:<img src="http://www.sample.com/sample.asp?id=1"/>
    当我要显示图片2的时候,可以写成:<img src="http://www.sample.com/sample.asp?id=2"/>

但我从来没接触过asp,事情又比较急,因此希望CSDN里的高手能给出sample.asp的完整实现,我好参考修改,谢谢!

------解决方案--------------------
得到id,根据id得到真实文件名TrueFileName,我就不写了。

fileURL=Server.MapPath(TrueFileName) 

Set Stream = server.createObject("ADODB.Stream") 
Stream.Type = adTypeBinary 
Stream.Open 
Stream.LoadFromFile fileURL
While Not Stream.EOS 
Response.BinaryWrite Stream.Read(1024 * 64) 
Wend 
Stream.Close 
Set Stream = Nothing 
Response.Flush 
Response.End

------解决方案--------------------

<script>
var $=function(id){  return document.getElementById(id); }
window.onload=function(){
  var imgURL=$("img1").src;
  var id=imgURL.split("?id=")[1];
  $("img1").src="http://www.2.com/"+id+"/sample.jpg;
  $("img1").classText="display:''";
}
</script>
<img id=img1 src="http://www.sample.com/sample.asp?id=1" style="display:none" />


------解决方案--------------------
这个方法肯定可以,我17楼没写清楚,重新整理如下。你测试的时候一定要对应好涉及到的各个URL:
在你可控制的网站放一个图片处理计数文件,例如http://www.sample.com/sample.asp:

<%
  id=request.QueryString("id")
  if id="" then id=-1;
  '假设http://www.2.com/ 是你放图片的网站,注意把图片路径写正确
  if id<0 then
    imgUrl="http://www.2.com/alt.jpg"'当解析错误时,一张替换图片的地址
  else
    imgUrl="http://www.2.com/"&id&"/sample.jpg"'真正的图片地址
    '计数:
    'sql="UPDATE [计数表] SET [计数字段]=[计数字段]+1 WHERE imgID="&id
    conn.execute(sql)
    conn.close() 
 end if
  Response.Status="301 Moved Permanently"'声明转向状态为301
  Response.AddHeader "Location",imgUrl   '跳转
   Response.End()
%>

邮件内容

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
 <head>
  <title> test </title>
 </head>
 <body>
   <img src="http://www.sample.com/sample.asp?id=1" alt='id=1'">
   <img src="http://www.sample.com/sample.asp?id=2" alt='id=2'">
 </body>
</html>


再试试吧