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;
    }

 }