Avatar billede justdoit Nybegynder
06. november 2002 - 23:54 Der er 8 kommentarer og
1 løsning

Hvor skal loop være?

Jeg har denne kode, som skal udskrive et hvis der ikke er noget i db, og noget andet hvis der er noget i db, men jeg får en fejl der siger: Loop

Her er koderne, hvad er fejlden??


<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConString
sql = "SELECT * FROM mad WHERE brugerId = " & Session("id")
Set objRec = Conn.Execute(sql)
if objRec.EOF or objRec.BOF then 'hvis notesbogen er tom
%>
                              <table width="170" border="0" cellspacing="0" cellpadding="0" height="1">
                                <tr>
                                  <td width="166"></td>
                                </tr>
                              </table>
                              <% Else
                              Do until objRec.EOF
                              %>
                              <table width="170" border="0" cellspacing="0" cellpadding="0">
                   
                        <table width="161" border="0" cellspacing="0" cellpadding="0" class="sidemenu_bg">
                        <% while not objRec.eof %>
                          <tr>
                            <td><%=objRec("pris")%></td>
                          </tr>
                          <%
                         
objRec.movenext
wend

objRec.Close
Set objRec = Nothing
Conn.Close
Set Conn = Nothing
%>
Avatar billede justdoit Nybegynder
06. november 2002 - 23:55 #1
Øhh fejlen var:

Der opstod en Microsoft VBScript-kompileringsfejl (0x800A040E)
'Loop' uden 'Do'
/include/hovedmenu_alle.asp, line 696
Loop
Avatar billede eagleeye Praktikant
06. november 2002 - 23:56 #2
Ret

wend

Til

Loop
Avatar billede eagleeye Praktikant
06. november 2002 - 23:56 #3
Eller ret:

Do until objRec.EOF
                             
Til

while not objRec.EOF
Avatar billede eagleeye Praktikant
06. november 2002 - 23:59 #4
Enten laver man en:

while not rs.EOF
  bla bla kode

wend


ELLER

do until rs.EOF
  bla bla kode

loop
Avatar billede justdoit Nybegynder
07. november 2002 - 00:05 #5
Ok, det havde jeg lige fået blandet sammen ;o)

Lige nu, mangler jeg en: END

men jeg kan ikke lige se hvor:??



<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConString
sql = "SELECT * FROM mad WHERE brugerId = " & Session("id")
Set objRec = Conn.Execute(sql)
if objRec.EOF or objRec.BOF then 'hvis notesbogen er tom
%>
                              <table width="170" border="0" cellspacing="0" cellpadding="0" height="1">
                                <tr>
                                  <td background="billeder/site/ramme_left.gif" width="4"></td>
                                  <td width="166"></td>
                                </tr>
                              </table>
                              <% Else %>
                              <table width="170" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                                            <td colspan="5">
                        <table width="161" border="0" cellspacing="0" cellpadding="0" class="sidemenu_bg">
                        <% while not objRec.eof %>
                          <tr>
                            <td><%=objRec("pris")%></td>
                          </tr>
<%
                         
objRec.movenext
wend

objRec.Close
Set objRec = Nothing
Conn.Close
Set Conn = Nothing
%>
Avatar billede eagleeye Praktikant
07. november 2002 - 00:12 #6
Enfter

wend

Indsæt:

End if
Avatar billede justdoit Nybegynder
07. november 2002 - 00:23 #7
Ja, det har du da ret i, jeg skrev jo kun end!!

Du får dine point, men jeg skal lige høre: Jeg vi udskrive en ting, hvis databasen er tom, eller hvis bruger ikke er logget ind, og noget andet hvis bruger er loget ind.

Men hvordan laver jeg sådan at hvis bruger ikke er logget ind, så skal der heller ikke udskrives noget??

Det er her jeg mener!

sql = "SELECT * FROM notesbog WHERE brugerId = " & Session("id")
Set objRec = Conn.Execute(sql)
if objRec.EOF or objRec.BOF then 'hvis notesbogen er tom
%>
                              <table width="170" border="0" cellspacing="0" cellpadding="0" height="1">
                                <tr>
                                  <td background="billeder/site/ramme_left.gif" width="4"></td>
                                  <td width="166"></td>
                                </tr>
                              </table>
                              <% Else %>
Avatar billede eagleeye Praktikant
07. november 2002 - 00:28 #8
Det kommer an på hvordan du styre om folk er logget på.. har du en session eller noget??  Jeg kan se har en Session("id")....

Du kan lave et tjek i stil med:

if Session("id") = "" then
  'Lave tom recordset ud fra SQL 
  sql = "SELECT * FROM notesbog WHERE brugerId = 0"
else
  sql = "SELECT * FROM notesbog WHERE brugerId = " & Session("id")
end if
Avatar billede justdoit Nybegynder
07. november 2002 - 00:50 #9
Jeg har prøvet mig frem med noget af det du sagde, dog en lille forandring:

Men jeg får denne fejl??

Der opstod en Microsoft VBScript-kørselsfejl fejl '800a01a8'

Et objekt er obligatorisk: 'objRec'


Det ser sådan ud:

<% 
if Session("id") = "" then
  'Lave tom recordset ud fra SQL %>
  <table width="170" border="0" cellspacing="0" cellpadding="0" height="1">
                                <tr>
                                  <td background="billeder/site/ramme_left.gif" width="4"></td>
                                  <td width="166"></td>
                                </tr>
                              </table>
<%   
else
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConString
sql = "SELECT * FROM notesbog WHERE brugerId = " & Session("id")
Set objRec = Conn.Execute(sql)
%>
                    <table width="170" border="0" cellspacing="0" cellpadding="0">
                        <table width="161" border="0" cellspacing="0" cellpadding="0" class="sidemenu_bg">
                        <% while not objRec.eof %>
                          <tr>
                            <td><%=objRec("pris")%></td>
                          </tr>
<%
objRec.movenext
wend
End if
objRec.Close
Set objRec = Nothing
Conn.Close
Set Conn = Nothing
%>
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