Hej! Det ser ganska rätt ut alltihopa, men prova: Jag tycker att detta exempel illusterar ganska bra att ASP, faktiskt, är ganska svårt. Man ska samtidigt lära sig ett programeringsspråk, en objektmodell, databaser, ett protokoll /http), klient/server och ett uppmärkningsspråk! :-) tycker den kod ser lite konstig ut. Försökt fixa till den. Du hade bland annat glömdt <% och %> runt color: Tack för alla tips! Hej Så enkelt var det! :-) Har stirrat mig blind på koden. Ännu ett skäl att alltid ha "Option Explicit" på varje sida :-) Ha alltid Färga bakgrunden i listan! [Löst]
Har fått lite väl mycket "post" i min medlemslista. Så det vore läge att färga bakgrunden på varannan rad.
Har spanat runt och hittar en par olika alternativ till detta.
Men verkar placera de fel eftersom det inte vill funka! Är ganska osäker på vart/hur koden skall användas.
Så här ser en del av koden ut...
<table width="501" border="0"> <tr> <td><font size="2" face="Verdana">Medlemslista
</font></td></tr> <tr> <td valign="top"> <table width="99%" border="0" CELLSPACING="0" CELLPADDING="0">
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:/Inetpub/wwwroot/Medlemmar.mdb"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From Medlemmar ORDER BY ID ASC"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
DO UNTIL RecSet.EOF
Set RecSet2 = Server.CreateObject("ADODB.Recordset")
Addera2 = "Select ID From Medlemmar"
RecSet2.Open Addera2, Connect, adOpenStatic, adLockOptimistic
DO UNTIL RecSet2.EOF
RecSet2.MOVENEXT
LOOP
RecSet2.CLOSE
%>
<%
DO UNTIL RecSet.EOF
nummer = nummer + 1
If nummer Mod 2 = 0 then
color = "FFFFFF"
Else
color = "C0C0C0"
End If
%>
<tr bgcolor="& color &">
<td width="33" height="10"><div align="left"><font size="1" face="Verdana"><%=RecSet("ID")%></font></div></td><td
height="10"><font size="1" face="Verdana"><%=RecSet("ForNamn")%><%=RecSet("EfterNamn")%></font></td>
</tr><tr><td width="33" height="19"><font face="Verdana" size="1">
<%
ResSet.MOVENEXT
LOOP
%>
<%
RecSet.MOVENEXT
LOOP
RecSet.CLOSE
Connect.CLOSE
Set RecSet = nothing
Set Connect = nothing
%>
Nån som kan hjälp mig på traven?
Mvh MarcusSv: Färga bakgrunden i listan!
Sätt även bgcolor på resp TD
Sedan vet jag inte varför du har en div inne i första TD, testa att ta bort den och sätta align=left på TD istället
Får du ingen färgning någonstans?
Gjorde en sökning i forumet och hittade några intressanta inlägg som kanske hjälper dig på traven:
[Olika färger på raderna i tabellen....(LÖST)]
[Skifta färger för tabellrader]
[Svår uppgift!! *LÖST*]Sv: Färga bakgrunden i listan!
Mitt tips är att du helt enkelt glömmer ASP och ger dig på traditionell HTML. Designa en tabell med varannan rad färgad så som du vill ha det. När du har en sådan HTML-sida framför dig _då_ infogar du ASP-koden som du har i eemplet.
Försök inte göra allt på en gång. Dela upp det i delmoment så blir det både enklare och klarare!Sv: Färga bakgrunden i listan!
<code>
<table width="501" border="0"> <tr> <td><font size="2" face="Verdana">Medlemslista
</font></td></tr> <tr> <td valign="top"> <table width="99%" border="0" CELLSPACING="0" CELLPADDING="0">
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:/Inetpub/wwwroot/Medlemmar.mdb"
Addera = "Select * From Medlemmar ORDER BY ID ASC"
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
DO UNTIL RecSet.EOF
If Nummer = True then
color = "FFFFFF"
nummer = False
Else
color = "C0C0C0"
nummer = True
End If
%>
<tr bgcolor="<%=color%>">
<td width="33" height="10"><div align="left"><font size="1" face="Verdana"><%=RecSet("ID")%></font></div></td><td
height="10"><font size="1" face="Verdana"><%=RecSet("ForNamn")%><%=RecSet("EfterNamn")%></font></td>
</tr><tr><td width="33" height="19"><font face="Verdana" size="1">
<%
ResSet.MOVENEXT
LOOP
RecSet.CLOSE
Connect.CLOSE
Set RecSet = nothing
Set Connect = nothing
%> Sv: Färga bakgrunden i listan!
Koden till färga varannan rad har jag plockat från andra asp sidor.
Testa med ovanstående hjälp men få tyvärr...
Körningsfel i Microsoft VBScript (0x800A01A8)
Objekt krävs.: ''
Raden som anropas är koden i slutet och innehåller: ResSet.MOVENEXT
Mvh MarcusSv: Färga bakgrunden i listan!
Det är så "enkelt" som så att du har stavat fel.
Ändra ResSet till RecSet så ska det nog fungera.
Anna-KarinSv: Färga bakgrunden i listan!
Jätte TACK!
Mvh MarcusSv: Färga bakgrunden i listan!
Sv: Färga bakgrunden i listan!
<code>
<% Option Explicit %>
</code>
överst i dina sidor, då krävs det att du deklarerar alla dina variabler, vilket gör att du inte kan få likadana stavfel som du hade ovan
Du hade i ovastående fallet varit tvungen att i koden innan du skulle avända RecSet varit tvungen att skriva
<code>
Dim RecSet
Set RecSet = Server.CreateObject("ADODB.Recordset")
</code>
Om du sedan försöker köra sidan och har en varabel som heter "ResSet" så får du ett fel som säger att den inte är deklarerad, vilket innebär att du snabbt kommer underfund med eventuella stavfel.
Hoppas du hajjar, annars får du väl hojta igen :-)