zoukankan      html  css  js  c++  java
  • ASP页面-自动取回数据库中的值生成导航。

    以下为自己总结的一点经验,简单的介绍一下方法,如发现有误,请帮忙指正,谢谢。



    一,首先定义调用据库。

    <%
    dim objconn,objconnstr
    set objconn=server.createobject("adodb.connection")
    objconnstr="provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../demo/database.mdb")
    objconn.open objconnstr
    %>

    也可以直接写在一个页面中,然后进行调用 ,调用方法:<!--#include file="conn.asp"-->

     

    二,定义样式表并调用。

    调用方法:<link href="css/main.css" rel="stylesheet" type="text/css" />

     

    三,Body页面区域添加导航。

    /*定义对应字段,取回浏览器中的值,方便套用css样式表,即当前打开的项目菜单会高亮显示*/

    <%dim protypeid,ModelID
    protypeid=request.QueryString("protypeid")
    if protypeid="" or isnumeric(protypeid)=false then
    protypeid=0
    end if
    ModelID=request.QueryString("ModelID")
    if ModelID="" or isnumeric(ModelID)=false then
    ModelID=0
    end if
    %>

     


    导航内容:

    /*定义菜单DIV,控制位置*/
              <div id="content_left">
                <ul id="subnavi">
    
    /*定义并调用产品类型数据库*/
                  <%dim rsm,sqlm
                  set rsm=server.CreateObject("adodb.recordset")
                  sqlm="select * from robottype where isdel<>true order by sort desc,protypeid"
                  rsm.open sqlm,objconn,0,1
                  if not rsm.eof then
                  do while not rsm.eof
    /*判断protypeid对应的值是否与现在浏览器打开的相同,如果相同则套用样式subnavi_akt_2(只是为了高亮显示当前打开的导航项,不需要可以去掉该判断)*/
                  style1="subnavi_akt"
                  if cstr(rsp("protypeid"))=cstr(protypeid) then
                  style2="subnavi_akt_2"
                  end if
                  %>
    /*展示产品类别菜单*/
                  <li class="<%=style1%>"><a href="proseries.asp?Mainid=<%=rsm("MainID")%>&protypeid=<%=rsm("protypeid")%>" title="<%=rsm("protypename")%>"><%=rsm("protypename")%></a>
    /*展示产品类别菜单*/
                    <ul>
    
    /*定义并调用产品型号数据库*/
                     <%dim rsp,sqlp
                     set rsp=server.CreateObject("adodb.recordset")
                     sqlp="select * from robot_model where protypeid="&promain&" and isdel<>true order by sort desc,ModelId"
                     rsp.open sqlp,objconn,0,1
                     if not rsp.eof then
                     do while not rsp.eof
    /*判断ModelID(高亮显示当前打开的导航项,不需要可以去掉该判断)*/
                     style2="subnavi_normal_2"
                     if cstr(rsp("ModelID"))=cstr(ModelID) then
                     style2="subnavi_akt_2"         
                     end if
                     %>
    
    /*展示产品菜单导航*/
                     <li class="<%=style2%>"><a href="promodel.asp?protypeid=<%=rsm("protypeid")%>&ModelID=<%=rsp("ModelId")%>" title="<%=rsp("ModelName")%>"><%=rsp("ModelName")%></a>
    /*展示产品菜单导航*/
    /*进行产品型号的循环,即自动列出对应品牌下的产品型号*/
                     <%rsp.movenext
                     loop
                     rsp.close()
                     set rsp=nothing
                     end if%>
    /*产品型号循环结束*/
                   </ul>
                  </li>
    /*进行产品类别的循环,即自动列出对应品牌下的产品型号*/
                  <%rsm.movenext
                  loop
                  rsm.close()
                  set rsm=nothing
                  end if
                  %>
    /*产品类别循环结束*/
                </ul>
              </div>

    -完-


    实现的效果如下:



    By:Colin

    转载请注明原文地址及作者,谢谢合作。


    博客地址:http://www.cnblogs.com/colinliu/
    博客版权:本文以学习、记录、分享为目的。欢迎大家转载,但务必注明原文地址,谢谢合作!
  • 相关阅读:
    打印机连接向导
    字符串替换
    登入脚本统一公司桌面
    判断文件是否存在
    DOS系统变量
    修改文件访问权限
    【CF1017C】The Phone Number(构造)
    【CF1017B】The Bits(模拟)
    【CF1017A】The Rank(签到)
    【CF1016B】Segment Occurrences(模拟)
  • 原文地址:https://www.cnblogs.com/colinliu/p/3250493.html
Copyright © 2011-2022 走看看