ik probeer via een combobox een aantal klant namen binnen te halen vanuit een database, dit verloopt allemaal prima. maar de volgende stap is dat je een klant kan selecteren en deze vervolgens kan verwijderen uit de database. hier voor heb ik het volgende gemaakt:
waarbij de verwijder actie met deze pagina zou moeten gebeuren:
dit lijkt dus niet te werken:
CustomerSelected = Request.form("customer") want de SQL string komt er op de pagina als volgt uit te zien: DELETE FROM Customers WHERE Customer_Name = ' '
wanneer ik CustomerSelected = "testtest" doe dan krijgt de SQL string wel gewoon de waarde testtest, due daar lijkt het niet aan te liggen.
verder als ik er voor kies om een input box te nemen, dan lijkt het wel te werken. maar ik wil het graag vanuit een combobox doen.
ziet iemand wat ik fout doe? bij het toevoegen van een klant maak ik gebruik van dezelfde toepassing en hier werkt het wel gewoon. heeft het er misschien mee te maken dat ik twee forms heb in de code?
ASP.NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
| <!--#include file="Includes\Subs.asp"--> <% gConnectionString = "Provider=sqloledb;Data Source=xxxx;Initial Catalog=PDU_Schedule;User Id=xxxxx;Password=xxxx;" %> <html> <head> <script language="javascript"> <!-- function dept_onchange(frmSelect) { frmSelect.submit(); } //--> </script> </head> <body> The following customer was selected : <%=Request.Form ("customer")%> <form name="frmSelect" method="Post" action="Remove_Customer.asp"> <SELECT name=customer LANGUAGE=javascript onchange="return dept_onchange(frmSelect)"> <% SQL = "SELECT Customer_Name FROM Customers " SQL = SQL & " ORDER BY Customer_Name" SqlOpen SQL, rs, conn Do while not rs.EOF if Request.Form("customer") = rs("Customer_Name") then Response.Write "<OPTION VALUE = '" & rs ("Customer_Name") & "' SELECTED>" Response.Write rs("Customer_Name") & "</Option>" rs.MoveNext else Response.Write "<OPTION VALUE = '" & rs ("Customer_Name") & "'>" Response.Write rs("Customer_Name") & "</Option>" rs.MoveNext end if loop %> </SELECT> </form> <form method="post" action="But_RemoveCustomer.asp"> <input type="submit" value="Remove Customer"> <input type="reset" value="Cancel"> </form> </body> </html> |
waarbij de verwijder actie met deze pagina zou moeten gebeuren:
ASP.NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| <html> <Body> <!--#include file="Includes\Subs.asp"--> <% gConnectionString = "Provider=sqloledb;Data Source=xxxxx;Initial Catalog=PDU_Schedule;User Id=xxxx;Password=xxxx;" CustomerSelected = Request.form("customer") SQL = " DELETE FROM Customers WHERE Customer_Name = " & " ' " & CustomerSelected & " ' " on error resume next SqlExec SQL if err<>0 then Response.Write("No update permissions!") else Response.Write("<h3>" & recaffected & " record added</h3>") end if conn.close response.write(SQL) %> </html> </body> |
dit lijkt dus niet te werken:
CustomerSelected = Request.form("customer") want de SQL string komt er op de pagina als volgt uit te zien: DELETE FROM Customers WHERE Customer_Name = ' '
wanneer ik CustomerSelected = "testtest" doe dan krijgt de SQL string wel gewoon de waarde testtest, due daar lijkt het niet aan te liggen.
verder als ik er voor kies om een input box te nemen, dan lijkt het wel te werken. maar ik wil het graag vanuit een combobox doen.
ziet iemand wat ik fout doe? bij het toevoegen van een klant maak ik gebruik van dezelfde toepassing en hier werkt het wel gewoon. heeft het er misschien mee te maken dat ik twee forms heb in de code?
[ Voor 13% gewijzigd door stavast op 12-08-2010 15:48 ]