Avatar billede babyworm Nybegynder
12. april 2004 - 01:23 Der er 17 kommentarer og
1 løsning

Får aspfejl

Hejsa..

Har lavet en kode der henter indhold ud fra en database...

men når jeg skal lave loop igennem databasen og udskrive menuen, laver den fejl.. hvorfor?


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- #include file="conn.asp" -->
<html>
<head>
<title>Netspy.dk - All the things you didn't knew about Netspy</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="inkludes/style.css">

<%
openConn()
strid        = Request.querystring("id")
If not StrID >0 then StrId=0
SQL = "SELECT id, menu, tekst FROM context WHERE id=" & StrId
Set rs = connection.Execute(SQL)
%>

</head>

<body>
<table id="fundament" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td valign="top">
      <table style="width:638px; height: 100%;" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td id="billedeplaceholder"><img src="GFX/top.jpg" id="billede" alt=""></td>
        </tr>
        <tr>
          <td height="25">
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="135"></td>
                <td id="navigation">>> Profil >> Vægt</td>
              </tr>
            </table>
      </td>
        </tr>
    <tr>
          <td>
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td id="menutabel">
          <table id="menu" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td id="menuPlaceholder">

            <% While NOT (rs.BOF or  rs.EOF) %>
            <a href="default.asp?id=<%= rs("id")%>"><%= rs("menu")%></a>
            <% rs.MoveNext
            Wend %>

              </td>
                    </tr>
                  </table>
        </td>
                <td width="5"></td>
                <td id="contextplaceholder">
          <table id="content" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td id="contentplaceholder"><%= rs("tekst")%></td>
                    </tr>
                  </table>
        </td>
              </tr>
            </table>
      </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
</body>
</html>
Avatar billede babyworm Nybegynder
12. april 2004 - 01:26 #1
Er den her kode der driller tror jeg...

            <% While NOT (rs.BOF or  rs.EOF) %>
            <a href="default.asp?id=<%= rs("id")%>"><%= rs("menu")%></a>
            <% rs.MoveNext
            Wend %>

Fejlmeddelse:
Fejltype:
ADODB.Field (0x80020009)
Enten er BOF eller EOF sand, eller den aktuelle post er blevet slettet. Den anmodede handling kræver en aktuel post.
/workspace/netspy.dk/default.asp
Avatar billede rbl Praktikant
12. april 2004 - 01:38 #2
Det burde nu virke som du har skrevet det, men prøv at omformulere løkken. F.eks:

<% do While (NOT rs.BOF) AND (NOT rs.EOF) %>
<a href="default.asp?id=<%= rs("id")%>"><%= rs("menu")%></a>
<% rs.MoveNext
loop %>

Har du ikke et specifikt linienummer, hvor det går galt ?
Avatar billede rbl Praktikant
12. april 2004 - 01:41 #3
det er den her linie:

<td id="contentplaceholder"><%= rs("tekst")%></td>

Den virker selvfølgelig ikke.
Avatar billede babyworm Nybegynder
12. april 2004 - 01:41 #4
Nej..
den skriver bare:

Fejltype:
ADODB.Field (0x80020009)
Enten er BOF eller EOF sand, eller den aktuelle post er blevet slettet. Den anmodede handling kræver en aktuel post.
/workspace/netspy.dk/default.asp
Avatar billede rbl Praktikant
12. april 2004 - 01:42 #5
Hov, det skulle have været et svar :-)
Avatar billede babyworm Nybegynder
12. april 2004 - 01:42 #6
Det er jo kun alle menuerne den skal udskrive.. og så alt efter hvilket id der er i min questring, så skal den hente indholdet ud derfra
Avatar billede babyworm Nybegynder
12. april 2004 - 01:45 #7
hvordan skal den så se ud?
Avatar billede rbl Praktikant
12. april 2004 - 01:46 #8
På det tidspunkt har du jo løbet rs igennem, og den vil så være EOF
Avatar billede babyworm Nybegynder
12. april 2004 - 01:47 #9
Oki.. Men hvordan skal jeg så skrive deT?
Avatar billede rbl Praktikant
12. april 2004 - 01:47 #10
Hvad skal der skrives ud det sted ?
Avatar billede babyworm Nybegynder
12. april 2004 - 01:49 #11
Har en database hvori der er tre kolonner: id, menu og tekst...

Der hvor jeg har lavet mit loop nu, skal den skrive alle menuerne ud.. og gøre dem til en link.. så skal den hente teksten fra databasen alt efter hvilket id der er kaldt
Avatar billede rbl Praktikant
12. april 2004 - 01:53 #12
Du skal lave to udtræk:

SQL = "SELECT id, menu FROM context"
Set rs = connection.Execute(SQL)

SQL2 = "SELECT tekst FROM context WHERE id=" & StrId
Set rs2 = connection.Execute(SQL)

Den første henter alle menuerne fra databasen. Den anden henter den specifikke menu.
Avatar billede rbl Praktikant
12. april 2004 - 01:55 #13
<td id="contentplaceholder"><%= rs("tekst")%></td>

Skal så skiftes ud med:

<%if not rs2.EOF then%>
<td id="contentplaceholder"><%= rs2("tekst")%></td>
<%end if%>
Avatar billede babyworm Nybegynder
12. april 2004 - 01:56 #14
kommer den så til at hedde <%= rs2("tekst")%>
Avatar billede babyworm Nybegynder
12. april 2004 - 01:58 #15
Min kode nu:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- #include file="conn.asp" -->
<html>
<head>
<title>Netspy.dk - All the things you didn't knew about Netspy</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="inkludes/style.css">

<%
openConn()
SQL = "SELECT id, menu FROM context"
Set rs = connection.Execute(SQL)

strid = Request.querystring("id")

If not StrID >0 then StrId=1
SQL2 = "SELECT tekst FROM context WHERE id=" & StrId
Set rs2 = connection.Execute(SQL)
%>

</head>

<body>
<table id="fundament" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td valign="top">
      <table style="width:638px; height: 100%;" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td id="billedeplaceholder"><img src="GFX/top.jpg" id="billede" alt=""></td>
        </tr>
        <tr>
          <td height="25">
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="135"></td>
                <td id="navigation">>> Profil >> Vægt</td>
              </tr>
            </table>
      </td>
        </tr>
    <tr>
          <td><% While NOT (rs.BOF or rs.EOF) %>
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td id="menutabel">
          <table id="menu" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td id="menuPlaceholder">
                    <a href="default.asp?id=<%= rs("id")%>"><%= rs("menu")%></a>
              </td>
                    </tr>
                  </table>
        </td>
                <td width="5"></td>
                <td id="contextplaceholder">
          <table id="content" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td id="contentplaceholder">
            <%if not rs2.EOF then%>
              <td id="contentplaceholder"><%= rs2("tekst")%></td>
            <%end if%>
              </td>
                    </tr>
                  </table>
        </td>
              </tr>
            </table>
      </td>
      <% rs.MoveNext
          Wend %>
        </tr>
      </table>
    </td>
  </tr>
</table>
</body>
</html>



Min nye fejlmeddelse:

Fejltype:
ADODB.Recordset (0x800A0CC1)
Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.
/workspace/netspy.dk/default.asp, line 60
Avatar billede babyworm Nybegynder
12. april 2004 - 02:01 #16
Hehe... var lige nogle fejl.. nu virker den..

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- #include file="conn.asp" -->
<html>
<head>
<title>Netspy.dk - All the things you didn't knew about Netspy</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="inkludes/style.css">

<%
openConn()
SQL = "SELECT id, menu FROM context"
Set rs = connection.Execute(SQL)

strid = Request.querystring("id")

If not StrID >0 then StrId=1
SQL2 = "SELECT tekst FROM context WHERE id=" & StrId
Set rs2 = connection.Execute(SQL2)
%>

</head>

<body>
<table id="fundament" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td valign="top">
      <table style="width:638px; height: 100%;" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td id="billedeplaceholder"><img src="GFX/top.jpg" id="billede" alt=""></td>
        </tr>
        <tr>
          <td height="25">
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="135"></td>
                <td id="navigation">>> Profil >> Vægt</td>
              </tr>
            </table>
      </td>
        </tr>
    <tr>
          <td>
        <table style="width:100%; height: 100%;" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td id="menutabel">
          <table id="menu" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td id="menuPlaceholder">
            <% While NOT (rs.BOF or  rs.EOF) %>
                    <a href="default.asp?id=<%= rs("id")%>"><%= rs("menu")%></a><br>
                    <% rs.MoveNext
                    Wend %>
              </td>
                    </tr>
                  </table>
        </td>
                <td width="5"></td>
                <td id="contextplaceholder">
          <table id="content" border="0" cellspacing="0" cellpadding="0">
                    <tr>
            <%if not rs2.EOF then%>
              <td id="contentplaceholder"><%= rs2("tekst")%></td>
            <%end if%>
                    </tr>
                  </table>
        </td>
              </tr>
            </table>
      </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
</body>
</html>
Avatar billede rbl Praktikant
12. april 2004 - 02:02 #17
Hov, jeg lavede lige en fejl:
SQL2 = "SELECT tekst FROM context WHERE id=" & StrId
Set rs2 = connection.Execute(SQL2)

Jeg glemte 2-tallet i Execute(SQL2)

Hvorfor har du lavet om i løkken ?
Avatar billede rbl Praktikant
12. april 2004 - 02:03 #18
Ah, du har rettet det :-)
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