Принимать данные post в asp и вставлять в sql-сервер

Я только что сделал свой вопрос и добавил еще несколько сценариев, необходимых для того, чтобы собрать все вместе

Это небольшой сценарий, который я использую для получения сообщения и ввода данных в SQL Server (если это имеет значение в 2008 году): ОБНОВЛЕНИЕ 2 после предложений:

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data.SqlClient" %>

вот мой сценарий создания таблицы

CREATE TABLE local
(
P_Id int PRIMARY KEY IDENTITY,
etype varchar(255) NOT NULL,
latitude varchar(255),
longtitude varchar(255),
phone varchar(255)
)

и вот форма, которую я использую для тестирования

<title>A Web Page</title>
 
 
 <form action="http://www.mydomain.com/script.asp" method="post">
 <h2>Form Test</h2>
 Phone: 
 type:
 lat:
 lng:
 
 </form>

Это может быть что-то маленькое, но у меня нет других идей... спасибо.

2 ответа

Это в основном VB, просто переключитесь на него

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data.SqlClient" %>

Если вам это нужно на С#, запустите его через это: http://wiki.sharpdevelop.net/Code%20Converter.ashx


Это устранит ряд проблем в вашем существующем коде, в том числе некоторые, о которых вы даже не знаете:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

 Dim sql As String = "INSERT INTO sean.local (etype, latitude, longtitude, phone) VALUES (@etype, @latitude, @longtitude, @phone)"
 Using myConn As New SqlConnection("Integrated Security=false;Data Source=.;Initial Catalog=DOMAIN_NAME;UserID=user;Password=password"), _
 cmd As New SqlCommand(sql, cn)

 'I had to make up database types... edit this to use the real types
 cmd.Parameters.Add("@etype", SqlDbType.Integer).Value = Request.Form("type")
 cmd.Parameters.Add("@latitude", SqlDbType.Float).Value = Request.Form("latitude")
 cmd.Parameters.Add("@longtitude", SqlDbType.Float).Value = Request.Form("longtitude")
 cmd.Parameters.Add("@phone", SqlDbType.Varchar, 12).Value = Request.Form("phone")

 myConn.Open()
 cmd.ExecuteNonQuery()
 End Using

 Response.Redirect(Request.RawUrl, True)

 'This line will never run!
 Response.Write("1 record added")

End Sub

licensed under cc by-sa 3.0 with attribution.