简体   繁体   English

如何使用VB.Net通过javascript变量将JSON对象插入Mysql数据库

[英]How to insert JSON object into Mysql database through javascript variable using VB.Net

I want to convert my textbox value into json object through javascript variable and after the convertion need to insert the JSON Object into MySQL database using VB.Net code. 我想通过javascript变量将文本框值转换为json对象,转换后需要使用VB.Net代码将JSON对象插入MySQL数据库。 My Code as follows : 我的代码如下:

Client-Side : 客户端 :

<script type = "text/javascript" >
    $(function () {
    $('#btnSubmit').click(function () {
        var Name = $('#txtName').val();
        var Username = $('#txtUsername').val();
        var Password = $('#txtPassword').val();
        if (Name != '' && Username != '' && Password != '') {
            $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: "Default.aspx/InsertData",
                data: '{Name: ' + Name + ',Username:' + Username + ',Password:' + Password  + '}',
                dataType: "json",
                success: function (data) {
                    var obj = data.d;
                    if (obj == 'true') {
                        $('#txtName').val('');
                        $('#txtUsername').val('');
                        $('#txtPassword').val('');
                        $('#lblmsg').html("Details Submitted Successfully");
                        window.location.reload();
                    }
                },
                error: function (result) {
                    alert("Error");
                }
            });
        }
        else {
            alert('Please enter all the fields')
            return false;
        }
    })
});
</script>

Server Side : 服务器端 :

<WebMethod()> _
Public Shared Function InsertData(ByVal Name As String, ByVal UserName As String, ByVal Password As String) As String
    Dim msg As String = String.Empty
    Dim MySqlConn As MySqlConnection
    Dim query As String
    Dim dbcomm As MySqlCommand
    Dim reader As MySqlDataReader
    MySqlConn = New MySqlConnection
    MySqlConn.ConnectionString = "server=192.168.1.53;charset=utf8;userid=root;password=password;allow user variables=true;database=information"
    MySqlConn.Open()
    query = "insert into information.userDetails(Name,Username,Password) VALUES(@Name,@Username,@Password)"
    dbcomm = New MySqlCommand(query, MySqlConn)
    reader = dbcomm.ExecuteReader
    Dim i As Integer = dbcomm.ExecuteNonQuery()
    If i = 1 Then
        msg = "true"
    Else
        msg = "false"
    End If

    Return msg
    MySqlConn.Close()

End Function

But my json data always throughs error function. 但是我的json数据总是通过错误函数。 It doesn't enter into the success function it always calling error function. 它不进入成功函数,而总是调用错误函数。 Please let me know what to do?? 请让我知道该怎么办?? Thanks in advance. 提前致谢。

You can use JSON.stringify to properly send json data . 您可以使用JSON.stringify正确发送json data

Appending quotes and braces manually requires proper formatting so if you even miss a single quote error will occur. 手动添加quotes and braces需要proper formatting因此,即使您错过了单引号,也会发生错误。

var data = JSON.stringify({Name:  Name ,Username: Username ,Password:Password});


$.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "Default.aspx/InsertData",
        data: data,
        dataType: "json",
        success: function (data) {
            var obj = data.d;
            if (obj == 'true') {
               $('#txtName').val('');
               $('#txtUsername').val('');
               $('#txtPassword').val('');
               $('#lblmsg').html("Details Submitted Successfully");
               window.location.reload();
             }
         },
         error: function (result) {
                alert("Error");
            }
});

I used all jquery versions but my Jquery function doesn't working and showing error as "Use of getPreventDefault() is deprecated. Use defaultPrevented instead." 我使用了所有jquery版本,但我的Jquery函数无法正常工作,并显示错误消息,因为“已弃用getPreventDefault()。请改用defaultPrevented。” again again. 再来再来。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM