Avatar billede finntoft Nybegynder
06. januar 2002 - 01:58 Der er 22 kommentarer og
1 løsning

Tabel...

Hej...

Jeg har en access database hvor der er to kolonner som hedder:
tabel1
tabel2

Der skal laves en tabel som vist her:
http://home2.inet.tele.dk/ptoft/finn/tabel.htm

Kan i hjælpe mig?

På forhånd tak
Avatar billede darkhero Nybegynder
06. januar 2002 - 02:51 #1
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"DATABASENAVN.mdb\")
Conn.Open DSN

i = 1
Do until i=4
    strSQL = \"Insert into MAPPENAVN (kolonne1, kolonne2) values(\'\" & Request.form(\"feltnavn1\") & \"\',\'\" & Request.form(\"feltnavn2\") & \"\')\"
    Conn.Execute(strSQL)
    i = i+1
Loop


%>
Avatar billede finntoft Nybegynder
06. januar 2002 - 11:48 #2
Jeg klemte at skrive at det er forskelift hvor mange linjer der er.

Jeg skal ikke have skrivet noget ind i databasen men det skal skrives ud!

Lige nu går jeg bare sådan

Response.Write  \"<table border=\'0\' width=\'100%\'><tr><td width=\'40%\'>\" & Replace(tabel1, vbCrlF, \"<br>\") & \"</td>\" & \"<td width=\'60%\'>\" & Replace(tabel2, vbCrlF, \"<br>\") & \"</td></tr></table><br>\"

Men det virker ikke 100% fordi nogle gange er linjerne meget lange og så står de ikke over for hinaneden mere.

Håber du forstår mig nu.
Avatar billede dp2001 Juniormester
06. januar 2002 - 12:44 #3
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"DATABASENAVN.mdb\")
Conn.Open DSN

Do

Response.Write \"<table><tr>\"
Response.Write \"<td>\" & rs(\"tabel1\") & \"</td>\"
Response.Write \"<td>\" & rs(\"tabel2\") & \"</td>\"
Response.Write \"</tr></table>\"

rs.MoveNext

Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
Avatar billede finntoft Nybegynder
06. januar 2002 - 13:04 #4
dp2001 -> Den virker heller ikke som jeg vil ha den til... det skal værer så\'n at hver linje har en celle hver.
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:07 #5
Du kan jo ikke opdele dine recordsæt til flere celler!

I stedet må du gøre tabellen tilpas bred nok, hvis du ikke vil risikere, at der er noget, der ryger ned på næste linje.
Avatar billede finntoft Nybegynder
06. januar 2002 - 13:08 #6
Kan man da ikke læse en bestemt linje?
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:17 #7
Er ikke helt med på, hvad du mener.

Hvad har du af data i din DB?
Avatar billede finntoft Nybegynder
06. januar 2002 - 13:32 #8
Det er lidt forskeligt:

Prøv at se mit eks. her:
http://home2.inet.tele.dk/ptoft/finn/tabel2.htm
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:35 #9
Så kan jeg ikke forstå, at du ikke kan bruge mit tidligere forslag om at sætte det i tabel - dér får du det jo netop som du vil!
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:40 #10
Hvordan ser din DB ud - har du 1-mange relationer?

Hvis du har 1:1-relationer, kan du bruge mit ovenstående forslag. Skift blot \"tabel1\" og \"tabel2\" ud med de rigtige feltnavne.
Avatar billede finntoft Nybegynder
06. januar 2002 - 13:51 #11
Her kan du downloade min database:
http://home2.inet.tele.dk/ptoft/finn/database.mdb
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:55 #12
Er det en 2000-DB?

Sidder på arbejdet lige nu, har kun Access 97. Var i øvrigt lige inde og snuse på din side - kan se, at vi er ansat i samme biks!
Avatar billede finntoft Nybegynder
06. januar 2002 - 13:58 #13
Nåååå det er min fars side du kikker på :D

Det er desværer en 2000 database!
Avatar billede dp2001 Juniormester
06. januar 2002 - 13:59 #14
Der er nok nogle, der har fået sig lidt web-plads, hva\'?

Jeg kigger på det senere på dagen!
Avatar billede finntoft Nybegynder
06. januar 2002 - 14:00 #15
Ok tak
Avatar billede dp2001 Juniormester
06. januar 2002 - 17:16 #16
Du har defineret felterne som Notat, det ville jeg nu holde mig fra, hvis jeg var dig.

Med tekst, kan du have op til 255 karakterer - burde det ikke være nok?

Du gør også dig selv en bjørnetjeneste ved at skrive flere forskellige data i samme felt!
Avatar billede finntoft Nybegynder
06. januar 2002 - 17:20 #17
Hvordan vil du ellers lave det???
Avatar billede dp2001 Juniormester
06. januar 2002 - 17:24 #18
Jeg vil ændre datatypen i Access til tekst for \'tabel1\' og \'tabel2\' (hvorfor hedder dine felter i øvrigt tabel?).

Hvis vi nu renamer felterne til \'funktion\' og \'beskrivelse\', så vil jeg ganske enkelt oprette data som følger...

F1      | Hjælp
CTRL-C  | Kopier
CTRL-X  | Klip

osv. i stedet for at have flere beskrivelser samlet i samme felt.

Hvis du laver dette om og bruger følgende kode, burde den være der.


<html>
<head>
<title></title>
</head>
<body>
<h1>Database</h1>
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
strConnect = \"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"&Server.Mappath(\"/database.mdb\")&\";\"
Conn.Open strConnect

strSQL = \"Select * from tabel\"
Set rs = Conn.Execute(strSQL)

  Response.Write \"<table border=\'1px\' cellpadding=\'2\' cellspacing = \'0\' width=\'900px\'>\"
  Response.Write \"<tr><th align=\'center\' width=\'450\'>Funktion</th>\"
  Response.Write \"<th align=\'center\' width=\'450\'>Beskrivelse</th></tr>\"

Do While Not rs.EOF

  Response.Write \"<tr>\"
  Response.Write \"<td align=\'left\'>\" & \"&nbsp;\" & rs(\"funktion\") & \"</td>\"
  Response.Write \"<td align=\'left\'>\" & \"&nbsp;\" & rs(\"beskrivelse\") & \"</td>\"

  rs.MoveNext

Loop

Conn.Close
Set Conn = Nothing
    Response.Write \"</tr>\" & \"</table>\"
%>
</body>
</html>

Avatar billede dp2001 Juniormester
06. januar 2002 - 17:32 #19
Avatar billede finntoft Nybegynder
06. januar 2002 - 17:36 #20
Hvad hedder databasen så jeg kan downloade den?
Avatar billede dp2001 Juniormester
06. januar 2002 - 17:37 #21
Avatar billede dp2001 Juniormester
06. januar 2002 - 17:38 #22
Du kan lave...

strSQL = \"Select * from tabel order by funktion\"

Hvis du gerne vil have sorteret data alfabetisk.
Avatar billede finntoft Nybegynder
14. januar 2002 - 18:14 #23
Har selv fundet ud af noget!

Har fået svar fra Activeserverpages
If IsArray(arrMemo) Then
  For iCount = 1 To UBound(arrMemo)  \' Ubound = Upper Boundary = antal elementer i arrayet
    \' Det kan godt være at der skal tælles fra 0 til Ubound(arrMemo) - 1 (kan ikke lige huske det)
    Response.Write \"<br>\" & arrMemo(iCount)  \' Udskriv hver enkelt linie
  Next
Else
  Response.Write \"Fejl\"
End If
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