Asp.net 关于如何使用XmlHttpRequest对象插入数据库的混淆
大家好。我正在尝试学习如何使用Asp.net 关于如何使用XmlHttpRequest对象插入数据库的混淆,asp.net,database,xmlhttprequest,Asp.net,Database,Xmlhttprequest,大家好。我正在尝试学习如何使用XmlHttpRequest对象,并在网上查找一些示例。我在下面找到了这些代码并做了一些更改。然后创建一个表并添加一个名为“name”的字段使用varchar值。一切似乎都正常。但当我检查代码时,我注意到没有向数据库插入任何内容。所以我想知道这段代码中是否有错误或缺失,或者我创建的数据库是否存在任何问题。我不知道 <title></title> <script type="text/javascript">
XmlHttpRequest
对象,并在网上查找一些示例。我在下面找到了这些代码并做了一些更改。然后创建一个表并添加一个名为“name”的字段使用varchar值。一切似乎都正常。但当我检查代码时,我注意到没有向数据库插入任何内容。所以我想知道这段代码中是否有错误或缺失,或者我创建的数据库是否存在任何问题。我不知道
<title></title>
<script type="text/javascript">
function XmlHttpObj() {
var xhr = null;
// Tarayıcımızın ActiveXObject desteği olup olmadığını kontrol ediyoruz.
// İnternet Explorer'da gerçekleştirmek için Microsoft.XMLHTTP
try {
xhr = new ActiveXObject("MsXml2.XMLHTTP");
}
catch (e) {
try {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
if (typeof XMLHttpRequest != "undefined") {
xhr = new XMLHttpRequest();
}
}
}
return xhr;
}
var talep = XmlHttpObj();
function Listen() {
if (talep.readyState == 4 && talep.status == 200) {
var sonuc = talep.responseText;
if (sonuc != null) {
alert("Kayıt Eklendi");
}
else {
alert("Hata Meydana Geldi");
}
}
}
//veritabanına ürün ekleme yapacağımız fonksiyon
//onreadystatechange ile durum değişikliği kontrolü yaptık.
function Ekle() {
talep.open("POST", "Webform1.aspx");
talep.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
talep.onreadystatechange = Listen;
talep.send("mail=" + document.all.Text1.value);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="Text1" type="text" /><br />
<input id="Button1" type="button" value="Ürün Ekle" onclick="Ekle()"/>
我强烈建议您不要直接使用
XmlHttpRequest
。它有很多复杂性,很难让它在所有浏览器上运行。我建议使用PageMethods。可以使用ScriptManager
或者更好的方法是使用jQuery来完成。有关后者的好文章,请参见以下内容:
if (!string.IsNullOrEmpty(Request.Form["mail"]))
{
try
{
//SqlConnection sqlcon = new SqlConnection("server=.\\sqlexpress;database=northwind;trusted_connection=true");
//SqlCommand sqlcmd = new SqlCommand("insert into productss (name) values (@ad)", sqlcon);
//sqlcmd.Parameters.AddWithValue("@ad", Request.Form["mail"]);
//sqlcon.Open();
//sqlcmd.ExecuteNonQuery();
//sqlcon.Close();
}
catch (Exception)
{
throw;
}
}