Avatar billede duno Nybegynder
25. april 2003 - 21:02 Der er 14 kommentarer og
1 løsning

Opdeling af hentet data fra database!!!???

Hej jeg vil gerne have det sådan at mine hent fra databasen bliver delt op på flere sider, men jeg kan ikke helt følge hvordan det gøres... jeg har vedlagt det kode jeg tror der skal bruges .. men hvis der mangler noget så sig endelig til!!!


jeg har den her kode:

<html><head>
<title>Paging af et recordset</title>
</head><body>

<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT LinkURL FROM Links"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/aspdigital/db/demo.mdb")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 10
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not rs.EOF And intRecCount > 0
        Response.Write rs("LinkURL") & "<br>"
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
End If
rs.Close
Set rs = Nothing

Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
    Response.Write "<a href=paging.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
    Response.Write "<a href=paging.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
    Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
    Response.Write "<a href=paging.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
    Response.Write "&gt;&gt;"
End If
%>

</body></html>





Den vil jeg meget gerne ha mixet med denne kode:


<html>
<head>
<title>Database forbindelse</title>
<style type="text/css">
<!--
.overskrift {  font-family: Arial, Helvetica, sans-serif; font-weight: bold; color: #FFFFFF; font-size: 15px}
.bread {  font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: bold; color: #8D6CB8; text-decoration: none}
-->
</style>
<style type="text/css">
<!--
.back {  background-attachment: fixed; background-image: url(grafik/bigback.gif); background-repeat: no-repeat; background-position: left top}
-->
</style>


</head>
<body bgcolor="#F3E5FA" class="back" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<%
Set Conn = Server.Createobject("ADODB.Connection")

'--- Database forbindelse ---
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " &_
"DBQ=" & Server.Mappath("db/roskilde.mdb") & "; password=test"
Conn.Open strDSN

'--- SQL forspøgelse ---
Set RS = Conn.Execute("SELECT * FROM PersonTabel ORDER BY Fornavn")
%>

<div align="center"><br>
  <img src="grafik/overskrifter/alle.gif" width="263" height="45"> <br>
<br>
  <!--#include file="profilen.asp" --> </div>


</body>
</html>


Include filen har følgende kode:


<style>
<!--
.overskrift {  font-family: Arial, Helvetica, sans-serif; font-weight: bold; color: #FFFFFF; font-size: 15px}
.bread {  font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: bold; color: #8D6CB8; text-decoration: none}
-->
</style>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table border="1" width="550" bgcolor="#DFCEED" bordercolor="#8D6CB8" cellpadding="0" cellspacing="0" vspace="0" hspace="0" align="center">
  <%
'--- Udskriv data ---
Do While Not RS.EOF
    %>
  <tr>
    <td height="240" colspan="2">
      <table width="100%" border="1" align="center" bordercolor="#8D6CB8" bgcolor="#8D6CB8" class="overskrift">
        <tr>
          <td width="309">
            <div align="left"><span class="overskrift"><%=RS("Fornavn")%></span></div>
          </td>
          <td width="163">
            <div align="right" class="overskrift"></div>
          </td>
        </tr>
      </table>
      <table width="535" border="0" bgcolor="#DFCEED" cellspacing="0" cellpadding="0" hspace="0" vspace="0" align="center">
        <tr>
          <td height="2" colspan="2">&nbsp; </td>
        </tr>
        <tr>
          <td height="2" colspan="2">
            <div align="center"> <%   
    if RS("sti") <> "" then
    Response.Write"<img src=""log/" & RS("sti") & """ align=""center"">"
Else
  Response.write("<img src='abe.jpg'>")
    end if
%></div>
          </td>
        </tr>
        <tr>
          <td height="28" colspan="2 class="bread">
            <table width="535" border="0" bgcolor="#DFCEED" cellspacing="0" cellpadding="0" hspace="0" vspace="0" align="center">
              <tr>
                <td colspan="2" valign="top">
                  <div align="center"></div>
                  <div align="center"></div>
                  <div align="center"><span class="bread"><%=RS("Kommentar2")%><span class="bread"></span></span></div>
                </td>
              </tr>
            </table>
          </td>
        </tr>
        <tr>
          <td height="2" colspan="2">&nbsp;</td>
        </tr>
        <tr>
          <td width="140" valign="top"><font face="Arial, Helvetica, sans-serif" size="2" color="#000000"><b>F&oslash;dselsdag:</b></font></td>
          <td valign="top" height="30" width="410" class="bread"><%=RS("dag")%>/<%=RS("maaned")%>-<%=RS("Nationalitet")%></td>
        </tr>
        <tr>
          <td valign="top" width="140"><font face="Arial, Helvetica, sans-serif" size="2" color="#000000"><b>K&oslash;n:</b></font></td>
          <td height="30" valign="top" width="410" class="bread"><%=RS("koen")%></td>
        </tr>
        <tr>
          <td width="140" valign="top"><font face="Arial, Helvetica, sans-serif" size="2" color="#000000"><b><br>
            Hjemmeside:</b></font></td>
          <td valign="top" height="30" width="410" class="bread"><br>
            <%=RS("Kommentar")%></td>
        </tr>
      </table>
     
    </td>
  </tr>
  <%
RS.MoveNext
Loop

RS.close
Conn.Close
Set RS = nothing
Set Conn = nothing

%>
</table>

Hmm det blev vist et langt spørgsmål... jeg giver 150 points nu... jeg håbver det er nok.. ellers må i "skrive" højt!!!
Avatar billede ossian Nybegynder
25. april 2003 - 22:18 #1
Får du nogle fejlmeddelser?
Avatar billede duno Nybegynder
25. april 2003 - 23:16 #2
nej for jeg ved virkelig ikke hvordan jeg skal lave det.... hver gang jeg prøver at lave det som jeg tror det skal være.. mangler jeg en end if.. eller sådan noget pjat.. jeg er lost!!!
Avatar billede ossian Nybegynder
25. april 2003 - 23:53 #3
kom med nogle fejlmeddelser..så er det nemmere..en af gangen..
Avatar billede duno Nybegynder
26. april 2003 - 00:46 #4
ADODB.Recordset error '800a0cb3' 
Object or provider is not capable of performing requested operation.
Line 13 in profile.asp
nedenstående linie er linie 13

    rs.AbsolutePage = intPage
Avatar billede mm12010 Nybegynder
26. april 2003 - 15:09 #5
'--- SQL forspøgelse ---
Set RS = Conn.Execute("SELECT * FROM PersonTabel ORDER BY Fornavn")

for at kunne bruge AbsolutePage m.m. skal du åbne dine RecordSet med
Set rs = Server.CreateObject("ADODB.RecordSet")

se også:
http://activedeveloper.dk/aspdigital/kapitel2/paging.asp
Avatar billede duno Nybegynder
29. april 2003 - 22:30 #6
ok.. det var den kamel...

nu får jeg følgende fejl

Microsoft VBScript runtime error '800a01be'
Object doesn't support named arguments: 'PageSize'

/profilen4.asp, line 12
Avatar billede mm12010 Nybegynder
29. april 2003 - 22:51 #7
smid lige den kode der opretter RecordSet'et
Avatar billede duno Nybegynder
29. april 2003 - 23:02 #8
hej så har jeg pillet en smule.. og får nu følgende fejl...

Linie 173 til 177 ser ud som følger:

Response.Write rs("*") & "<br>"
intRecCount = intRecCount - 1
RS.MoveNext
Loop
End if


min kald ser ud som følgende:

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM PersonTabel ORDER BY Fornavn"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " &_
"DBQ=" & Server.Mappath("db/roskilde.mdb") & "; password=test"
rs.Open strSQL, strDSN, 1



Nedenstående er fejlen!!



Side 1 af 11
ADODB.Recordset error '800a0cc1'
Item cannot be found in the collection corresponding to the requested name or ordinal
/dbz4.asp, line 173
Avatar billede mm12010 Nybegynder
29. april 2003 - 23:08 #9
rs("*") << den går ikke

der skal enten stå et tal eller et navn
Avatar billede duno Nybegynder
29. april 2003 - 23:15 #10
jamen jeg henter jo alle mine records med * jeg skal bruge 11 informationer... altså 11 lister.. fornavn email MSN osv.. skal jeg så indskrive dem alle sammen i mit kald og i min response eller hvordan.. ..

hvis ja.. hvordan kombinere man dem så??? sådan her?? fornavn AND email AND osv??

har du ikke en icq eller MSN så vi kan skrive hurtigere sammen...
Avatar billede mm12010 Nybegynder
29. april 2003 - 23:22 #11
jeg koder ikke selv i VB - så jeg må desværre melde pas...

men et bud kunne være noget i retning af:

  For each item In rs
      Response.Write(rs.item)
      'Eller
      Response.Write(rs.value)
  Next
Avatar billede mm12010 Nybegynder
29. april 2003 - 23:23 #12
har du ikke en icq eller MSN så vi kan skrive hurtigere sammen...
-----------------------------------------------------------------

jo - men det må blive i morgen, jeg har en masse jeg skal ha forberedt til i morgen inden sengetid :o)
Avatar billede duno Nybegynder
29. april 2003 - 23:27 #13
ok men du skal have tak for hjælpen!!! tror jeg er ved at fange pointen!!! skriver lige imorgen hvis det er gået helt i fisk... lige meget hvad!!! så har du ihvertfald fortjent dine points!!! ingen tvivl om det... kan du sove godt.. når du er færdig med dine andre pligter!!
Avatar billede mm12010 Nybegynder
05. august 2003 - 12:29 #14
lukketid?
Avatar billede duno Nybegynder
05. august 2003 - 12:59 #15
ja det har du da ret i...

havde helt glemt det

du får dine points nu!!
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