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>

 

 

-完-


实现的效果如下:



posted @ 2013-07-13 11:26  Colin.liu  阅读(408)  评论(0编辑  收藏  举报