11. maj 2001 - 14:11
Der er
9 kommentarer og 1 løsning
kontrolere output
Jeg har 500 forskellige produkter som skal stå i en oversigt. Hvordan udskriver jeg dem til min side i alfabetisk rækkefølge opdelingen af oversigten skal være som følger. celle 1 celle 2 celle 3 celle 4 a b c d e f g h osv...
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Henter du dem fra en db ?
Du sorterer dem i din SELECT statement: SQL = \"SELECT * FROM PRODUKTER ORDER BY VARENAVN\" Derefter er det blot at udskrive dem i en tabel: dim kolonne=1 while not RS.eof \' Hvis vi skal starte på en ny række: if kolonne=1 then response.write \"<tr>\\n\" end if response.write \"<td>\" & RS(\"VARENAVN\") & \"</td>\" \' hvis vi har skrevet fire kolonner, skal rækken lukkes. if kolonne=4 then response.write \"</tr>\\n\" kolonne=0 end if kolonne=kolonne+1 RS.movenext loop \' Vi skal lige sørge for at lukke den sidste række. if kolonne > 1 then response.write \"</tr>\\n\" end if Jeg håber det kan bruges. Ellers må du uddybe din forklaring.
Det er forhåbentlig unødvendigt at gøre opmærksom på at du skal starte din <TABLE> inden du kommer til WHILE NOT RS.EOF og lukke den umiddelbart efter den sidste END IF :-)
Ja jeg henter dem i en database
Min kode ser sådan ud. Problemet er at linksne bliver skrevet ud i en lang række. Jeg vil gerne kunne kontrolere outputtet. Dvs sådan her: <table> <tr> <td>Varer med A</td> <td>Varer med B</td> <td>Varer med C</td> osv... </tr> </table> <html> <head> <title></title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\"> <table width=\"765\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"> <tr> <td colspan=\"3\"><img src=\"images/eptop.gif\" width=\"765\" height=\"52\"></td> </tr> <tr> <td width=\"132\" valign=\"top\"><img src=\"images/epvenstremenu.gif\" width=\"132\" height=\"265\" border=\"0\" alt=\"\"></td> <td width=\"5\"> </td> <td width=\"5\"> <table width=\"600\" border=\"0\"> <tr> <td><font size=1 face=Verdana, Arial, Helvetica, sans-serif>Produkter: <% Set Conn = Server.CreateObject(\"ADODB.Connection\") DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \" DSN = DSN & \"DBQ=\" & Server.MapPath (\"varer.mdb\") Conn.Open DSN strSQL = \"Select * From prisliste Order by varenr ASC\" Set rs = Conn.Execute(strSQL) Do strNavn = rs(\"varenr\") strLink = \"<font size=1 face=Verdana, Arial, Helvetica, sans-serif><a href=\'test6.asp?id=\" & rs(\"varenr\") & \"\'>\" & strNavn & \"</a>\" Response.Write \"<li>\" & strLink & \"</li>\" Response.Write \"<font size=1 face=Verdana, Arial, Helvetica, sans-serif> \" & rs(\"Beskrivelse\") & \"\" rs.MoveNext Loop While Not rs.EOF Conn.Close Set Conn = Nothing %> </td> </tr> </table> </td> </tr> </table> </body> </html>
Bruge modulus-functionen \'mod\': Set Conn = Server.CreateObject(\"ADODB.Connection\") DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \" DSN = DSN & \"DBQ=\" & Server.MapPath (\"varer.mdb\") Conn.Open DSN strSQL = \"Select * From prisliste Order by varenr ASC\" Set rs = Conn.Execute(strSQL) While Not rs.EOF counter = counter + 1 strNavn = rs(\"varenr\") Response.Write \"<font size=1 face=Verdana, Arial, Helvetica, sans-serif><a href=\'test6.asp?id=\" & strNavn & \"\'>\" & strNavn & \"</a>\" Response.Write \"<font size=1 face=Verdana, Arial, Helvetica, sans-serif> \" & rs(\"Beskrivelse\") & \"\" if counter mod 4 = 0 then Response.Write \"<p>\" end if rs.MoveNext wend Conn.Close Set Conn = Nothing
Brug modulus (en klassisk teknik i denne type situation) - men det opdager du først efter du har fedtet rundt med det andet...
Tak for point. :-) Jeg beklager jeg ikke var hjemme resten af dagen så jeg kunne følge op... Jeg kan forstå at du ikke bryder dig om den resulterende html-kode? Du vil gerne have at det \"står ordentligt\"? Hvis du tilføjer en \\n efter hver </td> får du automatisk linieskift.
- kun hvis du bruger Jscript/Javascript. Ellers hedder det & VbCrLf
ricardo : Øøøh? Kategorien er ASP, og mig bekendt er \\n i ASP / VBScript da også linieskift...?
Kurser inden for grundlæggende programmering