经典的asp表单处理
问题描述:
我有一个“古老的”网页,我需要向它灌输一些数据库功能,恐怕我不知所措,因为我找不到足够的资源如何做以及查询如何进行到传统的ASP。经典的asp表单处理
所以这基本上是怎么回事,我有一个表单验证器,它是用jQuery编写的,一旦表单被验证,我想用$ .post请求发送数据到表单处理器(某种经典的asp文件)。
我尝试使用Request.Form(“字段”),但它不工作。 我甚至试过使用Request.QueryString(“field”)的$ .get请求,并且我也没有成功。
一些代码:
Dim sConnection, objConn , objRS
sConnection = "connection string"
username = Request.QueryString("username")
sitename = Request.QueryString("site_name")
email = Request.QueryString("email")
comment = Request.QueryString("comment")
dataInsert = ("INSERT INTO larrydb_review (username, sitename, email, comment, rating) values (username, sitename, email, comment, rating)")
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open(sConnection)
objConn.Execute dataInsert
我假设的SQL查询字符串不正确写的,但我怕我还没发现那里写一个正确使用ASP变量。
任何帮助将不胜感激, 谢谢。
答
如果您使用的是METHOD = POST的表单,以检索你的ASP页面发送的数据:
username = Request.form("username")
sitename = Request.form("site_name")
email = Request.form("email")
comment = Request.form("comment")
然后更新您必须创建一个动态的字符串作为SQL表:
sConnection = "Provider=SQLNCLI.1;Password=YOUR_PASSWORD;Persist Security Info=True;User ID=YOU_USER_ID_FOR_DB;Initial Catalog=YOUR_DATABASE_NAME;Data Source=IP_YOUR_DB_SERVER;Use Regional Settings: Yes"
:
dataInsert = "INSERT INTO larrydb_review (username, sitename, email, comment, rating) values ('" & username & "', '" & sitename & "', '" & email & "', '" & comment & "', '" & rating & "')"
而且您的变量sConnection =“连接字符串”必须正确与数据库这样的例子在连接字符串填写
答
构建使用字符串连接符 “&” 你的INSERT字符串:
query = "INSERT INTO bleah (foo, bar) VALUES ('" & myfoo & "', '" & mybar & "')"
books.google.com是这样的事情一个很好的资源。自90年代中期以来,我没有编写经典的ASP程序。
确保在SQL查询中运行它们之前清理值:否则有人可以在其表单值中包含SQL片段并执行旧式SQL注入攻击。 – Beejamin 2011-06-08 11:50:27