Avatar billede bms Nybegynder
29. marts 2001 - 16:51 Der er 9 kommentarer og
1 løsning

Åbne 2 gange

Hejsa - jeg er ved at lave et link-liste-system og det går også endda. Men nu fandt jeg lige på noget nyt jeg ville se om jeg kunne lave.

Listen er 2 kolonner med 20 links i hver! Eller rettere - der er et max på 40 links i alt, og 20 i hver kolonne!

Jeg har lavet en anden side hvor man kan angive antallet (hhv. 20 og 40) angivet i koden nedenfor som \"20\" og \"max\". Kan man ikke på en eller anden måde kigge i databsen og se hvad de værdier står til i stedet for at skrive det i ASP-koden - altså gøre dem dynamiske?

Men det vil vel betyde at man skal åben endnu en connection midt inde i den man allerede HAR åbnet! Kan man det?

I må meget gerne ref. til koden nedenfor - den fatter jeg da lidt af!

<% Set RS = server.CreateObject(\"ADODB.connection\")
RS.open ConnString
SQL = \"SELECT * FROM Links\"
Set RS = RS.Execute(SQL)
%>
  <table>
    <tr>
      <td>     
<%    max = 40
    c = 0
    Do While Not RS.EOF AND (c < max)
    Url=RS(\"Url\")
%>
<a href=<%=Url%>><%=Url%></a>
<% c = c+1
  if c=20 then
    Response.Write \"</td><td>\"
  end if
  RS.Movenext
loop
RS.Close
Set RS = Nothing
%>
    </td>
    </tr>
  </table>
Avatar billede nute Nybegynder
29. marts 2001 - 16:56 #1
forstår jeg deg korrekt at du vil skrive ut en liste som ser sånn ut:

1    2
3    4
5    6
7    8

...

??

nute
Avatar billede bms Nybegynder
29. marts 2001 - 17:06 #2
nej, listen virker fint nok - ser sådan ud:
1
2
3
..

Spørgsmålet går på om man skal åbne endnu en connection midt inde i den man allerede HAR åbnet for at den skal kunne trække inputtene (i koden angivet som 20 & 40) ud fra databasen.
Avatar billede nute Nybegynder
29. marts 2001 - 17:13 #3
jeg forstår ærlig talt ikke hva du mener....
Avatar billede bms Nybegynder
29. marts 2001 - 17:23 #4
40 er det maksimale antal af links der bliver vist i alt
20 er antallet af links i hver kolonne

De tal angiver jeg ved en form på en anden side - de bliver altså smidt i databasen.
Men i koden ovenfor er tallene jo bare skrevet ind - og ikke trukket ud fra databasen - det er dét jeg ikke ved hvordan man gør! For så skal man vel have endnu en connection åben (der skal hente tallene fra en anden tabel i databasen)?
Avatar billede nute Nybegynder
29. marts 2001 - 17:28 #5
hvis disse verdiene ligger et eller annet sted i en database, kan du vel bare fyre av en SQL *før* du kjører dette:

SQL = \"SELECT * FROM Links\"
Set RS = RS.Execute(SQL)
%>
 
sånn at du gjør noe alá dette:

<%
SQL = \"SELECT * FROM [tabell med verdier]\"
Set RS = RS.Execute(SQL)
max = RS( [kolonne med max verdi: 40])
medium = RS( [kolonne med medium verdi: 20] )

SQL = \"SELECT * FROM Links\"
Set RS = RS.Execute(SQL)
%>
 
du trenger kun en Connection pr. side, men du trenger kanskje flere RecordSet, men jeg skulle ikke mene det er nødvendig i deette eksempelet...

/nute
Avatar billede bms Nybegynder
29. marts 2001 - 17:30 #6
aha - jamen jeg prøver!
Avatar billede bms Nybegynder
29. marts 2001 - 18:08 #7
Det vil ikke rigtigt virke - kan du se om der er noget galt?

<% Set RS = server.CreateObject(\"ADODB.connection\")
RS.open ConnString

SQL = \"SELECT * FROM Config\"
Set RS = RS.Execute(SQL)
maxlinks = RS(\"maxlinks\")
linksprcolumn = RS(\"linksprcolumn\")

SQL = \"SELECT * FROM Links\"
Set RS = RS.Execute(SQL)

%>
Avatar billede nute Nybegynder
29. marts 2001 - 18:30 #8
prøv dette:

<%
Set Conn = server.CreateObject(\"ADODB.connection\")
Conn.open ConnString

SQL = \"SELECT * FROM Config\"
Set RS = Conn.Execute(SQL)
maxlinks = RS(\"maxlinks\")
linksprcolumn = RS(\"linksprcolumn\")

SQL = \"SELECT * FROM Links\"
Set RS = Conn.Execute(SQL)

%>

/nute
Avatar billede bms Nybegynder
29. marts 2001 - 19:14 #9
Virker! Det var ikke den store ændring. Hvori består forskellen?
Avatar billede nute Nybegynder
29. marts 2001 - 19:36 #10
du hadde satt ditt Connection object til det samme navn som ditt recordSet object... :)
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