webForumDet fria alternativet

Else, if jag fattar ingenting..

ASPur ASP

11 svar · 413 visningar · startad av Meng

Medlem sedan feb. 2003549 inlägg
Frågan#1

Detta är en meny. Den listar alla meny objekten. Hur får jag den till att inte visa det i fet stil nedan på den sissta länken i menyn?

<table background="../images/bg_meny4.gif" width="152" height="100%" cellpadding="0" cellspacing="0">

<tr>
<td width="152" align="middle">

<table width="140" height="100%" cellpadding="0" cellspacing="0">

<tr>
<td width="140" valign="top">

<table width="140" cellspacing="0" cellpadding="4" valign="top" align="middle">

<tr>
<td background="../images/bg_menu_top.gif" width="100%" height="6">

</td>
</tr>

<tr>
<td background="../images/bg_menu_stand.gif" width="100%" valign="top" align="middle">

<%Set Url=Conn.Execute("Select * From Url Where kat=" & Request.QueryString("catId"))

  If Url.EOF Then%>

<table width="350" cellpadding="4" cellspacing="0" class="border" align="center">

<tr> 

<td align="center">Inget finns under <%=Kat("kat")%></td>

</tr>

</table>

<table width="350" border="0" cellspacing="0" cellpadding="0" height="5" align="center">

<tr> 

<td></td>

</tr>

</table>

  <%Else

    Do Until Url.EOF%>

      

      <table width="110" cellspacing="0" cellpadding="4" valign="top" align="middle">

         <tr>
           <td height="22" onmouseover="this.style.backgroundImage='url(../images/bg_menu_over.gif)'" onmouseout="this.style.backgroundImage='url()'">
             <b>
              <a href="ut.asp?id=<%=Url("id")%>" target="content">
               <%=Code(Url("namn"))%>
              </a>
             </b>
            </td>
           </tr>

[B]
           <tr>
             <td background="../images/bg_menu_hr.gif" height="6">
             </td>
           </tr>[/B] 

      </table>

 

    <%Url.MoveNext

    Loop

  End If

End If

If Request.QueryString("catId") <> "" Then

  Set Kat=Conn.Execute("Select * From kat Where id=" & Request.QueryString("catId"))%>

</td>

</tr>

<tr>
<td background="../images/bg_menu_bottom.gif" width="100%" height="6">

</td>

</tr>

</table>

tack på förhand! :birp

Medlem sedan juni 200032 967 inlägg
#2

Uh, du har inte lust att se till att man kan läsa koden?

Medlem sedan sep. 20026 425 inlägg
#3

Det var riktigt jobbigt att läsa koden, kan du fixa till den lite?

Medlem sedan feb. 2003549 inlägg
#4

bättre?

Medlem sedan sep. 20026 425 inlägg
#5

Jo tack, det var bättre. Vad gäller ditt problem så får du nog använda Recordcount och kolla vilket id alla länkar har. När du kommer till sista länken, d v s den med numret Recordcount-1, så skriver du ut en vanlig länk i stället för länken i fet stil. Ungefär så här kanske din kod kan bli i så fall:

table background="../images/bg_meny4.gif" width="152" height="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="152" align="middle">

<table width="140" height="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="140" valign="top">

<table width="140" cellspacing="0" cellpadding="4" valign="top" align="middle">
<tr>
<td background="../images/bg_menu_top.gif" width="100%" height="6">
</td>
</tr>
<tr>
<td background="../images/bg_menu_stand.gif" width="100%" valign="top" align="middle">

<%Set Url=Conn.Execute("Select * From Url Where kat=" & Request.QueryString("catId"))

[b]rakna = Url.Recordcount[/b]

  If Url.EOF Then%>

<table width="350" cellpadding="4" cellspacing="0" class="border" align="center">
<tr> 
<td align="center">Inget finns under <%=Kat("kat")%></td>
</tr>
</table>

<table width="350" border="0" cellspacing="0" cellpadding="0" height="5" align="center">
<tr> 
<td></td>
</tr>
</table>

  <%Else
i = 0
    Do Until Url.EOF
i = i +1 %>

      

      <table width="110" cellspacing="0" cellpadding="4" valign="top" align="middle">

         <tr>
           <td height="22" onmouseover="this.style.backgroundImage='url(../images/bg_menu_over.gif)'" onmouseout="this.style.backgroundImage='url()'">
[b]<% If Not i = rakna-1 Then %>
             <b><a href="ut.asp?id=<%=Url("id")%>" target="content"><%=Code(Url("namn"))%></a></b>
<%
Else
%><a href="ut.asp?id=<%=Url("id")%>" target="content"><%=Code(Url("namn"))%></a>
<%
End If
%>[/b]
            </td>
           </tr>
           <tr>
             <td background="../images/bg_menu_hr.gif" height="6">
             </td>
           </tr> 
      </table>
    <%Url.MoveNext
    Loop

  End If
End If

If Request.QueryString("catId") <> "" Then
Set Kat=Conn.Execute("Select * From kat Where id=" & Request.QueryString("catId"))%>

</td>
</tr>
<tr>
<td background="../images/bg_menu_bottom.gif" width="100%" height="6">
</td>
</tr>
</table>

Jag kan ju tillägga att din kod inte är den bästa, man ska bland annat deklarera variabler med Dim och också använda Option Explicit, men koden ovan tror jag fungerar. :)

Medlem sedan feb. 2003549 inlägg
#6

Jag kan ju tillägga att din kod inte är den bästa, man ska bland annat deklarera variabler med Dim och också använda Option Explicit, men koden ovan tror jag fungerar.

Jag kan ju säga att jag kan drygt, inget om Asp så därför ser min kod ut som den gör.

Dina ändringar hade faktiskt inte nån effekt. Länkarna får ju id efter vilken ordning de läggs in allså den nyaste ligger längst ner. Tänkte försöka göra något system för det men har inte kommit så långt.

Så här ser den ut nu:

Så här vill jag att den ska se ut:

Medlem sedan juni 20022 599 inlägg
#7
' ..
    Do Until Url.EOF%>
      <table width="110" cellspacing="0" cellpadding="4" valign="top" align="middle">
         <tr>
           <td height="22" onmouseover="this.style.backgroundImage='url(../images/bg_menu_over.gif)'" onmouseout="this.style.backgroundImage='url()'">
             <b>
              <a href="ut.asp?id=<%=Url("id")%>" target="content">
               <%=Code(Url("namn"))%>
              </a>
             </b>
            </td>
           </tr>
<%
	Url.MoveNext
	if not URl.EOF
%>
           <tr>
             <td background="../images/bg_menu_hr.gif" height="6">
             </td>
           </tr> 
	<%end if%>
      </table>
    <%
    Loop
' ..
Medlem sedan juni 200032 967 inlägg
#8

Det är inte varje dag man får rätta niko, men jag tar i alla fall detta tillfälle i akt. ;)

	if not URl.EOF

skall vara:

	if not URl.EOF [b]then[/b]

Mvh

Medlem sedan sep. 20026 425 inlägg
#9

Aha, då förstod jag! Du ville alltså att sista kanten skulle bort, men jag trodde att sista länken inte skulle vara i fet stil.. (Min kod vart ändå inte rätt, tydligen.. :( )
Hoppas att det löste sig. :)

Medlem sedan juni 20022 599 inlägg
#10

@nders:
Jo, märker själv att jag börjar glömma "then" allt oftare faktiskt. Det är nog en biverkning av .NET-studion som automatiskt slänger dit den när man byter rad.

m_soderlund skrev:

Min kod vart ändå inte rätt, tydligen..

Nej, RecordCount returnerar alltid -1 för ForwardOnly-recordset.

Medlem sedan sep. 20026 425 inlägg
#11

Ah, så var det ja! :)
Man glömmer helt klart bort ASP när man jobbar med ASP.NET. :)

Medlem sedan feb. 2003549 inlägg
#12

Fine Fine! det funkar utmärkt. :birp
Ska lära mig att vara mycket mer utförlig av vad det är jag vill ha nästa gång!

Tackar tackar

141 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)