PDA

View Full Version : سوال: ساخت منو



pedram_ns
چهارشنبه 31 تیر 1388, 15:32 عصر
سلام
با asp چطور می شه منو ساخت؟یک منو ساده که در اون لینک به صفحات دیگه باشه؟
2.یک منو که در اون یک فیلد مثلا برای جستجو باشه؟
با تشکر

reghbali06
چهارشنبه 31 تیر 1388, 15:36 عصر
سلام
با asp چطور می شه منو ساخت؟یک منو ساده که در اون لینک به صفحات دیگه باشه؟
2.یک منو که در اون یک فیلد مثلا برای جستجو باشه؟
با تشکر

با نرم افزار های مختلفی مثل dhtml menu می تونید منو بسازید و از کد htmlی که بهتون می ده استفاده کنید.

pedram_ns
پنج شنبه 01 مرداد 1388, 14:14 عصر
با تشکر از جوابتون
این نرم افزا رو چطور می شه گیر اورد؟

skflower
پنج شنبه 01 مرداد 1388, 18:47 عصر
سلام دوست عزیز. متن زیر رو تو گوگل سرچ کنید:
dhtml+menu+download

هواشناس
جمعه 02 مرداد 1388, 08:36 صبح
بنام خدا
با سلام

یک منوساز داینامیک و پویای دیتابیسی برای asp


البته شما هم میتونید مثل من از دیتابیس استفاده کنید و منو های دینامیک و پویا داشته باشید
ایراد استفاده از نرم افزار ها در اینه که برای تغییر در منوهای سایت دوباره بایستی با نرم افزر منو ها رئو تغییر داد و بعد آپلود کرد
ولی اگه بتونید منو هاتون رو دیتابیبسی کنید حتی میتونید افکتی جاوااسکریپی هم روش بذارید و هر موقع که خواستید بطور آنلاین تغییرش بدید
من از کد زیر استفاده کردم


<%Sub PageMenu(root)%>
<a href="/home.asp" id="arrow">صفحه اول پرتال</a><br /><br />
<%
set MenuCnnDB = Server.CreateObject("ADODB.Connection")
strMenuConn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\root\DB\setting.mdb;"' & ";Jet OLEDB:Database Password=''"
MenuCnnDB.Open strMenuConn
SqlMenuWithoutmg="select * From Paths where active='1' and pathroot_name='"&lcase(trim(root))&"' and menugroup=0 order by pageorder,pathid "
set RDSMenu =MenuCnnDB.execute(SqlMenuWithoutmg)' server.CreateObject ("ADODB.Recordset")%>
<%Do while (not RDSMenu.eof)%>
<a href="<%=RDSMenu("pathname")%>" target="<%=RDSMenu("target")%>" id="arrow"><%=RDSMenu("label")%></a><br />
<%RDSMenu.movenext%>
<%Loop%>
<br />

<%
SqlMenuwithmg="select * From Paths where active='1' and pathroot_name='"&lcase(trim(root))&"' order by pageorder,pathid "
set RDSMenu =MenuCnnDB.execute(SqlMenuwithmg)' server.CreateObject ("ADODB.Recordset")
'RDSMenu.filter="pathroot_name='"&lcase(trim(root))&"'"
if err=0 then
RDSMenu.movefirst
RDSMenu.filter="menugroup=-1"
i=0
dim menugroup_id(100),menugroup_name(100)
Do while (not RDSMenu.eof)
i=i+1
menugroup_id(i)=RDSMenu("pathid")
menugroup_name(i)=RDSMenu("label")
RDSMenu.movenext
Loop%>
<%for j=1 to i%>
<div id="menu" style="color:#00F;font-family:Tahoma; font-size:10px; font-weight:bold">
<%=menugroup_name(j)%>
</div>
<%
RDSMenu.filter=""
RDSMenu.filter="menugroup="&menugroup_id(j)%>
<%Do while (not RDSMenu.eof)%>
<a href="<%=RDSMenu("pathname")%>" target="<%=RDSMenu("target")%>" id="arrow"><%=RDSMenu("label")%></a><br />
<%RDSMenu.movenext%>
<%Loop%>
<br />
<%next%>
<%else%>
<b style="color:#FF0000">در رویت منوها مشکلی وجود دارد</b><br />
<center><a href="/home.asp" id="arrow">صفحه اول پرتال</a></center>
<%end if
RDSMenu.Close
set RDSMenu = nothing%>
<%End Sub%>


در این sub براساس root که در اصل من اسمش رو ریشه گذاشتم و شما می تونید مثلا اینجوری تعبیرش کنید که مثلا سایتی دو زبانه fa و en دارید و آدرس های شما بفرم site.com/fa/a.asp یا site.com/en/b.asp دارید که با فراخوانی url می تونید root رو تشخیص بدید، بعد براساس اون با توجه ب هلینک های ثبتی در دیتابیس و با توجه به لینکهای فعال active=1 (فیلد active) از ریشه فیلد root همنام با root شما منوهای شما فراخوانی میشه
در این دیتابیس من برای ترتیب منوها از pageorder و از pathid بعنوان id شناسایی،menugroup=-1 برای دسته بندی منوها مثلا 3 تا بعنوان گروه یک با سرتیتر RDSMenu("label") و از menugroup=0 برای منوهای خارج هر دسته ای که جدا ظاهر میشن و .......

دیگه فکر کنم اسمهای فیلد ها کاملا توصیف اونها رو بدهند و مشخص باشند

من از این منوساز که نوشتم در پرتالم استفاده کردم