Finns det ngt enklare sätt att skriva detta?

ASP

8 svar · 188 visningar · startad av soffan76

Medlem sedan maj 2001684 inlägg
Trådstart#1

Hej alla!
Jag undrar om någon vet ett enklare sätt att skriva detta? Säkert finns det, detta känns lite klumpigt...
Mvh Sofia

<% 
SQL = "SELECT * FROM PA_Help Where ID_Num =1"
Set RS = Conn.Execute(SQL) 
%>

<% 
SQL2 = "SELECT * FROM PA_Help Where ID_Num =2"
Set RS2 = Conn.Execute(SQL2) 
%>

<% 
SQL3 = "SELECT * FROM PA_Help Where ID_Num =3"
Set RS3 = Conn.Execute(SQL3) 
%>

<% 
SQL4 = "SELECT * FROM PA_Help Where ID_Num =4"
Set RS4 = Conn.Execute(SQL4) 
%>

<% 
SQL5 = "SELECT * FROM PA_Help Where ID_Num =5"
Set RS5 = Conn.Execute(SQL5) 
%>

<% 
SQL6 = "SELECT * FROM PA_Help Where ID_Num =6"
Set RS6 = Conn.Execute(SQL6) 
%>

<% 
SQL7 = "SELECT * FROM PA_Help Where ID_Num =7"
Set RS7 = Conn.Execute(SQL7) 
%>

<% 
SQL8 = "SELECT * FROM PA_Help Where ID_Num =8"
Set RS8 = Conn.Execute(SQL8) 
%>

<% 
SQL9 = "SELECT * FROM PA_Help Where ID_Num =9"
Set RS9 = Conn.Execute(SQL9) 
%>

<% 
SQL10 = "SELECT * FROM PA_Help Where ID_Num =10"
Set RS10 = Conn.Execute(SQL10) 
%>

<table>

<tr>
<td valign="top">Hjälptext 1:</td>
<td><textarea cols=25 rows=4 name="h1"><%= RS("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 2:</td>
<td><textarea cols=25 rows=4 name="h2"><%= RS2("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 3:</td>
<td><textarea cols=25 rows=4 name="h3"><%= RS3("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 4:</td>
<td><textarea cols=25 rows=4 name="h4"><%= RS4("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 5:</td>
<td><textarea cols=25 rows=4 name="h5"><%= RS5("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 6:</td>
<td><textarea cols=25 rows=4 name="h6"><%= RS6("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 7:</td>
<td><textarea cols=25 rows=4 name="h7"><%= RS7("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 8:</td>
<td><textarea cols=25 rows=4 name="h8"><%= RS8("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 9:</td>
<td><textarea cols=25 rows=4 name="h9"><%= RS9("Helptext") %></textarea></td>
</tr>

<tr>
<td valign="top">Hjälptext 10:</td>
<td><textarea cols=25 rows=4 name="h10"><%= RS10("Helptext") %></textarea></td>
</tr>
Medlem sedan mars 2001484 inlägg
#2

Då ska vi se...

response.write "<table>" & vbCrLf
for i=1 to 10
SQL = "SELECT * FROM PA_Help WHERE ID_Num = " & i
Set RS = Conn.Execute(SQL)
response.write "<tr>" & vbCrLf
response.write "<td valign=""top"">Hjälptext " & i & ":</td>
<td><textarea cols=25 rows=4 name=""h" & i & """><%= RS("Helptext") %></textarea></td>" & vbCrLf
response.write "</tr>" & vbCrLf
RS.Close
next
response.write "</table>" & vbCrLf
Conn.Close

Nåt sånt. & vbCrLf lägger jag till för att snygga till källkoden.

Varför måste du förresten göra på detta sätt? Ser lite otympligt ut. Syfte med sidan? Vilka tabeller har du?

Medlem sedan aug. 20003 575 inlägg
#3
<% 
SQL = "SELECT * FROM PA_Help Where Order By id_num"
Set RS = Conn.Execute(SQL)
iCount = 0

sOutput = "<Table>"

Do Until Rs.Eof or iCount => 10
iCount = iCount + 1
sOutput = sOutput&"<tr><td valign='top'>Hjälptext "&iCount&":</td>"&_
"<td><textarea cols='25' rows='4' name='h"&iCount&"'"_
RS("Helptext")&"</textarea></td></tr>"

Rs.MoveNext
Loop
sOutput = sOutput&"</Table>"
Set Rs = Nothing
Conn.Close
%>

du kanske menar något annat?
denna sparar iallafall lite mer server kraft än den du och han ovanför skrev

[Redigerat av Nickemannen den 20 jun 2001]

Medlem sedan maj 2001684 inlägg
#4

Jag har en tabell som ser ut följande:

Helptext ID_Num
helptext1 1
helptext2 2
helptext3 3
helptext4 4

Man ska kunna hämta olika hjälptexter på sidan beroende på vilken del man befinner sig i. Det är ett formulärsystem där olika sorters ifyllnadshjälp kan behövas.

Medlem sedan feb. 20001 590 inlägg
#5

Vägra loopa databasen!!!

<% 
SQL = "SELECT * FROM PA_Help Where ID_Num > 0 AND ID_Num < 10"
Set RS = Conn.Execute(SQL) 
%>

Ett mycket undligt system du verkar ha för att hämta text från en databas.

Fast det verkar som du bara ska ha en hjälptext åt gången eller?

/T

Medlem sedan maj 2001684 inlägg
#6

Hej!

Jag har nu testat Nickemannens kod fast det kruxar lite. Varför får jag felmeddelande vid RS("Helptext")?

Expected end of statement 

/Sweco/Projektanmälan/uppdatera_helptexter.asp, line 25 

RS("Helptext")&"</textarea></td></tr>"
Medlem sedan dec. 19996 522 inlägg
#7

Toonster, hur loopar man det man vill ha ut då från databasen på bästa sätt ?

Medlem sedan maj 2001684 inlägg
#8

Det undrar jag också....

Medlem sedan mars 20002 836 inlägg
#9

Antar att du på något vis skickar in ett värde som bestämmer vilken text som ska visas.
Då skulle jag nog byggt tabellen på ngt liknande vis:

[HelptextRubrik] [Helptext] [ID_Num]

och sedan följer koden för att plocka fram rätt text:

<% 
......
intHelpID = Request.QueryString("helpID")
SQL = "SELECT * FROM PA_Help Where ID_Num = " & intHelpID
Set RS = Conn.Execute(SQL) 
%>
<table>
<tr>
<td valign="top"><% =RS("HelptextRubrik")%></td>
<td><textarea cols=25 rows=4 name="h1"><%= RS("Helptext") %></textarea></td>
</tr>
</TABLE>
.........

cya,
PatrikB

254 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)