webForumDet fria alternativet

dynamiskt värde med formulär

ASP

5 svar · 331 visningar · startad av morris_the_cat

Medlem sedan feb. 200553 inlägg
Frågan#1

Hej!

Kanske en nybörjarfråga, men jag är ju nybörjare...

Om jag från en sida har denna koden

   Visa = "SELECT * FROM members"
   RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic %>
  <tr>
    <td>		<form action="members_list_inf_2.asp" method="post">
				<select name="country" class="inputtextmedium">
				<option value="AF">Afghanistan</option>
				<option value="AL">Albania</option>
				<option value="DZ">Algeria</option>
				<option value="AS">American Samoa</option>
				<option value="AD">Andorra</option>

/* Och så vidare

Hur ska jag skriva på mottagarsidan för att lista det land användaren väljer? Förstår att SQL är inblandat. Jag använder en access databas.

Martin

Medlem sedan juni 200032 967 inlägg
#2

Det framgår inte riktigt vad du vill göra med värdet, men så här hämtar du upp och skriver ut det i alla fall:

Response.write Request.Form("country")
Medlem sedan feb. 200553 inlägg
#3

Hur skriver jag det i en sql sats, typ SELECT * FROM members WHERE country = och det är där jag går bet

Medlem sedan juni 200032 967 inlägg
#4
strSQL = "SELECT * FROM members WHERE country = '" & replace(request.form("country"), "'", "''") & "'"
Medlem sedan feb. 200553 inlägg
#5

Tac @nders!!! Men vad betyder egentligen alla fnuttar på slutet?

Medlem sedan juni 200032 967 inlägg
#6

För att skydda mot SQL-injection måste all indata escapeas. Apostrofer avgränsar ju strängar i SQL, och för att inte SQL-frågan ska hijackas eller gå sönder så ersätter man en apostrof med två.

Mvh

255 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)