webForumDet fria alternativet

Loop i vides paging....?

25 svar · 570 visningar · startad av crisse6

crisse6Medlem sedan dec. 20002 526 inlägg
#1

hej...med denna kod blir det fel, sedan har jag problem med Paginglänkarna... hmm... kan någon ordna detta är det ett stort tack... db-kopplingen är inkluderad...

<%
Set objRs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM add_forum Where svarid = '" & Request.Querystring("svarid") & "'"
SQL = "SELECT * FROM medlemmar"
set objRs2=Databas.execute(SQL)

 
intPageId = request.querystring( "pageid" )
if intPageId = "" then intPageId = 1

with objRs
  .cursorLocation = 3
  .open strSQL, Databas
  .pagesize = 10
  .absolutepage = intPageId
end with

intPages = cint( objRs.pagecount )
intCurrentPost = 0
response.write "<font face=Verdana size=2 class=rubrik> -->" & objRs("rubrik") & "</font><br><br>"
response.write "<table width=500 cellspacing=1 cellpadding=2><tr><td bgcolor=#EFEFEF width=100><font face=Verdana size=1><b>Skribent:</b></font></td><td bgcolor=#EFEFEF><font face=Verdana size=1><b>Tråd:</b></td></tr></table>"
do until objRs.eof and intCurrentPost < objRs.pagesize

if bgcolor = "#FFFFFF" then 
  bgcolor = "#EFEFEF"
else
  bgcolor = "#FFFFFF"

  strContents = strContents &_
    "<table width=500 bgcolor="& bgcolor &"><tr><td width=100 valign=top><b>"& objRs("anvandarnamn") &"</b><br><br>" &_
    "<font face=Verdana size=1>"& objRs2("antal_inlagg") & " inlägg<br>" &_
    "</td><td><font face=Verdana size=1>" & objRs("rubrik") & "<br><br>" & objRs("inlagg") & "</font></td></tr>"
     
  intCurrentPost = intCurrentPost + 1
  objRs.movenext
loop

for i = 1 to objRs.pagecount
  strNavigation = strNavigation & " <a href='?pageid=" & i & "&trad=" & Request.Querystring("trad") & "&svarid=" & request.querystring("svarid") & "'>" & i & "</a>"
next

response.write "<table>" & strContents & "</table>"
response.write "<table><tr><td><font face=Verdan size=1>" & strNavigation & "</td></tr></table></font>" 
end if
%>

fel:

Microsoft VBScript compilation error '800a040e' 

'loop' without 'do' 

/forum/las.asp, line 38 

loop

rad 38:

loop

puhh!

@ndersMedlem sedan juni 200032 969 inlägg
#2

Då tar vi ett steg i taget.

if bgcolor = "#FFFFFF" then 
  bgcolor = "#EFEFEF"
else
  bgcolor = "#FFFFFF"
[b]end if[/b]
solbulleMedlem sedan mars 20015 287 inlägg
#3

set objRs2=Databas.execute(SQL)

ska det inte stå objRs på den raden?

crisse6Medlem sedan dec. 20002 526 inlägg
#4

@nders, end if orsakde expected statement eller nåt....
solbulle, objRs2 ska vara så, det är två olika tabeller... kolla i början

@ndersMedlem sedan juni 200032 969 inlägg
#5

Det ska vara ett end if där. Vilken rad pekade det nya felmeddelandet på?

crisse6Medlem sedan dec. 20002 526 inlägg
#6
Microsoft VBScript compilation error '800a0400' 

Expected statement 

/forum/las.asp, line 45 

end if

rad 45:

end if
@ndersMedlem sedan juni 200032 969 inlägg
#7

Vilket end if är det? Det sista i din kod? Varför har du den där?

crisse6Medlem sedan dec. 20002 526 inlägg
#8

hmm...

crisse6Medlem sedan dec. 20002 526 inlägg
#9

jag flyttade ner den nu längst ner, fick då loop felet... konstigt...

@ndersMedlem sedan juni 200032 969 inlägg
#10

Vad flyttade du ner var? Hur ser koden ut?

HeHoMedlem sedan apr. 2000277 inlägg
#11

Inte vet jag men nu är ju INTE if-satsen i loopen stängd.
Den stänger du ju längst ned, utanför loopen och det går ju inte.

PeeerMedlem sedan mars 20025 907 inlägg
#12

@nders skrev:

Vad flyttade du ner var? Hur ser koden ut?

crisse6Medlem sedan dec. 20002 526 inlägg
#13
<%
strSQL = "SELECT * FROM add_forum Where svarid = '" & Request.Querystring("svarid") & "'"
SQL = "SELECT * FROM medlemmar"
set objRs2=Databas.execute(SQL)
set objRs=Databas.execute(strSQL)
 
intPageId = request.querystring( "pageid" )
if intPageId = "" then intPageId = 1

with objRs
  .cursorLocation = 3
  .open strSQL, Databas
  .pagesize = 10
  .absolutepage = intPageId
end with

intPages = cint( objRs.pagecount )
intCurrentPost = 0
response.write "<font face=Verdana size=2 class=rubrik> -->" & objRs("rubrik") & "</font><br><br>"
response.write "<table width=500 cellspacing=1 cellpadding=2><tr><td bgcolor=#EFEFEF width=100><font face=Verdana size=1><b>Skribent:</b></font></td><td bgcolor=#EFEFEF><font face=Verdana size=1><b>Tråd:</b></td></tr></table>"
do until objRs.eof and intCurrentPost < objRs.pagesize

if bgcolor = "#FFFFFF" then 
  bgcolor = "#EFEFEF"
else
  bgcolor = "#FFFFFF"
  strContents = strContents &_
    "<table width=500 bgcolor="& bgcolor &"><tr><td width=100 valign=top><b>"& objRs("anvandarnamn") &"</b><br><br>" &_
    "<font face=Verdana size=1>"& objRs2("antal_inlagg") & " inlägg<br>" &_
    "</td><td><font face=Verdana size=1>" & objRs("rubrik") & "<br><br>" & objRs("inlagg") & "</font></td></tr>"
     
  intCurrentPost = intCurrentPost + 1
  objRs.movenext
loop

for i = 1 to objRs.pagecount
  strNavigation = strNavigation & " <a href='?pageid=" & i & "&trad=" & Request.Querystring("trad") & "&svarid=" & request.querystring("svarid") & "'>" & i & "</a>"
next

response.write "<table>" & strContents & "</table>"
response.write "<table><tr><td><font face=Verdan size=1>" & strNavigation & "</td></tr></table></font>" 
end if
end if
%>

så ser den ut nu, men om jag stänger den uppe inom loopen så får jag Expected Statement, och är det ingen alls (end if)eller om end if ligger längst ner så blir det felmess på raden där det står "loop", beskrivning: loop utan do? hmmm.... knepigt...

doggelitoMedlem sedan juni 20003 076 inlägg
#14

du kan ju alltid börja med att avsluta denna:

if bgcolor = "#FFFFFF" then 
  bgcolor = "#EFEFEF"
else
  bgcolor = "#FFFFFF"
[b]end if[/b]

sen kan du ta bort 1 end if längst ned. :)

solbulleMedlem sedan mars 20015 287 inlägg
#15

Jag skulle nog rekomender att båda "end if" längst ner tas bort.

doggelitoMedlem sedan juni 20003 076 inlägg
#16

stämmer bra det! ;)

crisse6Medlem sedan dec. 20002 526 inlägg
#17

doggelito, om du hade läst inläggen innan så hade du inte behövt att skriva ;) men inget illa menat, tackar för alla som kan tänka sig att hjälpa mig!

doggelitoMedlem sedan juni 20003 076 inlägg
#18

jo, det såg jag nog.
men eftersom du klistrade in felaktig kod så tänkte jag att det var
bäst att påminna igen. ;)

crisse6Medlem sedan dec. 20002 526 inlägg
#19

satte end if där vid if satsen som ni sagt tidigare, tog bort de två end if längst ner, kanske ett steg på rätt väg? får nytt felmess :e

ADODB.Recordset error '800a0e79' 

Operation is not allowed when the object is open. 

/forum/las.asp, line 13

13:

  .cursorLocation = 3
doggelitoMedlem sedan juni 20003 076 inlägg
#20

du kan nog ta bort denna rad: set objRs=Databas.execute(strSQL)

eftersom den öppnas två ggr.

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