按需要随机产生图片列表存储于session中

解决方案 »

  1.   

    函数怎么写,我怎么在js里面写session啊
      

  2.   

    我手里面有26个图片,我要随机出现在指定的20个页面上,图片要同时出现,叶面刷新的时候图片不变,出现的位置也不变。 一个页面最多可以有3个图片,最少可以没有。请问怎么写?
    以下代码测试通过,不知道能否满足你的需求
    imgurl.asp
    -----------------------------------
    <%
    Dim imgurl(26)
    for i=0 to 25
      imgurl(i)="img"&i&".gif"
    next
    '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。
    'imgurl(0)="img0.gif"
    '...
    'imgurl(25)="img25.gif"
    function getRndImg(n)'获得n张随机图片
    MyImg=""
    Randomize 
    for i=1 to 3 '循环3次
       MyValue = Int((26 * Rnd))'产生0到25之间的随即数
       MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
    next
    getRndImg=MyImg
    end function
    %>page1.asp
    ----------------------------
    <!--#include file="imgurl.asp"//-->
    <%sessionName=Request.ServerVariables("SCRIPT_NAME")
    '直接以文件名作为session的名称if session(sessionName)="" then
    '如果该页未显示过图片则将随即图片记录入session
    session(sessionName) = getRndImg(3)
    end if
    response.write session(sessionName)
    %>
      

  3.   

    改进了一下每页随机显示0-3张。刷新不变
    imgurl.asp
    -----------------------------------
    <%
    Dim imgurl(26)
    for i=0 to 25
      imgurl(i)="img"&i&".gif"
    next
    'imgurl(0)="img0.gif"
    '...
    'imgurl(25)="img25.gif"
    '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片
    MyImg=""
    Randomize 
    n=Int((4 * Rnd))
    for i=1 to n '循环3次
       MyValue = Int((26 * Rnd))'产生0到25之间的随即数
       MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
    next
    getRndImg=MyImg
    end function
    %>page1.asp其他文件名自己取,内容不需要变动
    ----------------------------
    <!--#include file="imgurl.asp"//-->
    <%sessionName=Request.ServerVariables("SCRIPT_NAME")
    '直接以文件名作为session的名称if session(sessionName)="" then
    '如果该页未显示过图片则将随即图片记录入session
    session(sessionName) = getRndImg
    end if
    '输出图片
    response.write session(sessionName)
    '以下用来测试随即产生0-3张图片
    'response.write getRndImg
    %>
      

  4.   

    不好意思,我没有说明白,我意思是指定20个页面,在这20个页面上都加载这个js,实现上面的功能,叶面不需要写代码,只要加载这个js就行了
      

  5.   

    操作session可以写在js文件里面吗?
      

  6.   

    改进了一下每页随机显示0-3张。刷新不变
    imgurl.asp
    -----------------------------------
    <%
    Dim imgurl(26)
    for i=0 to 25
      imgurl(i)="img"&i&".gif"
    next
    'imgurl(0)="img0.gif"
    '...
    'imgurl(25)="img25.gif"
    '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片
    MyImg=""
    Randomize 
    n=Int((4 * Rnd))
    for i=1 to n '循环3次
       MyValue = Int((26 * Rnd))'产生0到25之间的随即数
       MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
    next
    getRndImg=MyImg
    end function
    %>page1.asp其他文件名自己取,内容不需要变动
    ----------------------------
    <!--#include file="imgurl.asp"//-->
    <%sessionName=Request.ServerVariables("SCRIPT_NAME")
    '直接以文件名作为session的名称if session(sessionName)="" then
    '如果该页未显示过图片则将随即图片记录入session
    session(sessionName) = getRndImg
    end if
    '输出图片
    response.write "document.write('"&session(sessionName)&"')"
    '以下用来测试随即产生0-3张图片
    'response.write getRndImg
    %>在需要显示的页面调用如下js。
    <script src=page1.asp></script>