Avatar billede martin86 Nybegynder
24. maj 2005 - 09:18 Der er 20 kommentarer og
1 løsning

fejl i VB script, Expected 'Loop'

Hej Eksperter ...

Har lavet et scipt der får en VB fejl når jeg kører det..

Scriptet:

<%if mode="front" then%>
front

<%SQLsite = "SELECT * FROM undermenu ORDER BY id"
Set site = Conn.Execute(SQLsite)

do while site.eof=false

elseif mode = site("id") then%>

<%site("tekst")%>

<%site.MoveNext
Loop%>

<%else%>
else

<%end if%>


fejlen:

Microsoft VBScript compilation (0x800A03FB)
Expected 'Loop'
/svk/Default.asp, line 89
elseif mode = site("id") then
Avatar billede cpufan Juniormester
24. maj 2005 - 09:21 #1
do while not site.eof 'istedet for do while site.eof=false
Avatar billede hiks Nybegynder
24. maj 2005 - 09:22 #2
den er gal inde i dit loop - det skal se nogenlunde sådan ud:

<%
if mode="front" then
    Response.Write "front"

    SQLsite = "SELECT * FROM undermenu ORDER BY id"
    Set site = Conn.Execute(SQLsite)

    While site.eof = false

        if mode = site("id") then
            site("tekst")
        end if
        site.MoveNext
    Wend

end if
%>

/hiks
Avatar billede cpufan Juniormester
24. maj 2005 - 09:23 #3
og så skal du have dit loop flyttet til

<%loop
end if%>
Avatar billede medions Nybegynder
24. maj 2005 - 09:24 #4
<%if mode="front" then%>
front

<%SQLsite = "SELECT * FROM undermenu ORDER BY id"
Set site = Conn.Execute(SQLsite)

While site.eof

elseif mode = site("id") then%>

<%site("tekst")%>

<%site.MoveNext
Wend
%>

<%else%>
else

<%end if%>

//>Rune
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:25 #5
mdeions >>

Microsoft VBScript compilation (0x800A03FA)
Expected 'Wend'
/svk.dk/Default.asp, line 89
elseif mode = site("id") then
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:25 #6
cpufan >>>

den henter ingen ting men står blank
Avatar billede medions Nybegynder
24. maj 2005 - 09:26 #7
Avatar billede hiks Nybegynder
24. maj 2005 - 09:28 #8
det der egentlig er dit problem er at du inde i din løkke forsøge med en if-sætning som først afsluttes på den anden side af din løkke og det må man ikke..

/hiks
Avatar billede cpufan Juniormester
24. maj 2005 - 09:31 #9
<%=site("tekst")%> istedet for <%site("tekst")%>
Avatar billede cpufan Juniormester
24. maj 2005 - 09:34 #10
<%if mode="front" then
'front

SQLsite = "SELECT * FROM undermenu ORDER BY id"
Set site = Conn.Execute(SQLsite)

do while not site.eof

if mode = site("id") then
response.write site("tekst")
end if

site.MoveNext
Loop
end if%>
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:37 #11
cpufan >>>

Den henter ingen ting fra databasen ....
Avatar billede cpufan Juniormester
24. maj 2005 - 09:39 #12
men den vil så altid være tom,
da 1. betingelse er at mode = "front"
derefter skal mode = site("id") og jeg går ud fra at det er et tal,
men for at printe noget ud, skal site("id") være lig med "front"
da mode jo er "front" .-.-.- men kan da også være id er "front" ???
Avatar billede cpufan Juniormester
24. maj 2005 - 09:41 #13
<%if mode="front" then
'front

SQLsite = "SELECT * FROM undermenu ORDER BY id"
Set site = Conn.Execute(SQLsite)

do while not site.eof

'if mode = site("id") then
response.write site("id") &"<br>" ' prøv denne for at se om den så printer ud
response.write site("tekst")
'end if

site.MoveNext
Loop
end if%>
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:41 #14
site("id") et et tal ...

hvis du har tid/lyst kan jeg sende hele scriptet til dig så får du også helhedsindtrykke af det ....
Avatar billede cpufan Juniormester
24. maj 2005 - 09:43 #15
meningen er at du udkommenterer if-sætningen inde i loop'et

'if
'end if
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:44 #16
sådan som den er nu skal mode jo egentlig være front for at den afspiller min sql sætning

korrekt?
Avatar billede cpufan Juniormester
24. maj 2005 - 09:46 #17
ja nemlig
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:48 #18
hvis jeg laver den sådan her udskriver den alle poster i databasen... men de skal jo kun udskrive en....


<%SQLsite = "SELECT * FROM undermenu ORDER BY id"
Set site = Conn.Execute(SQLsite)

do while site.eof=false

'if mode = site("id") then
response.write site("id") &"<br>" ' prøv denne for at se om den så printer ud
response.write site("tekst")
'end if

site.MoveNext
Loop%>
Avatar billede cpufan Juniormester
24. maj 2005 - 09:53 #19
ja men hvilken en, er det så du vil have skrevet ud?
hvordan kan du identificere den?
måske du bare kan gøre det i sql-sætningen
"SELECT top 1 * from undermenu order by id desc"
Avatar billede martin86 Nybegynder
24. maj 2005 - 09:56 #20
tak for hjælpen....

Jeg tror det er 'umuligt' (alt er muligt men alligevel) ..... jeg giver dig nogle point for at have forklaret mig nogle ting :D


LUKKET
Avatar billede cpufan Juniormester
24. maj 2005 - 10:02 #21
hmmm,
jamen så tak - men vi kunne da godt få det på plads
så skal jeg bare se noget andet kode
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester