使用javascript将HTML页面与SQL server连接

Connect HTML page with SQL server using javascript

本文关键字:SQL server 连接 javascript HTML 使用      更新时间:2023-09-26

我有一个HTML页面,其中有3个文本框字段名称地址年龄,我想将这些文本框中的数据保存在SQL server数据库中。

我得到了一个使用web服务执行此任务的参考,但我无法从javascript连接到web服务。

因此,请帮助我解释从javascript以其他方式访问web服务(如果存在)将数据从HTML页面保存到sql server的方法。

<script>
var name=document.getElementById("name").value;
var address= document.getElementById("address").value;
var age= document.getElementById("age").value;
$.ajax({
      type:"GET",
      url:"http://hostname/projectfolder/webservicename.php?callback=jsondata&web_name="+name+"&web_address="+address+"&web_age="+age,
      crossDomain:true,
      dataType:'jsonp',
      success: function jsondata(data)
           {
            var parsedata=JSON.parse(JSON.stringify(data));
            var logindata=parsedata["Status"];
            if("sucess"==logindata)
            {   
                alert("success");
            }
            else
            {
                alert("failed");
            }
          }  
    }); 
<script>

您需要使用web服务。在上面的代码中,我使用了php web服务,它有一个可选的回调函数。假设你知道HTML5,我没有发布html代码。在url中,您可以将详细信息发送到web服务器。

JavaScript是一种客户端语言,MySQL数据库将在服务器上运行。

因此,您必须将文件重命名为index.php(.php很重要),以便使用php代码。这不是很难,但用html是不可能的。

(不知怎么的,你可以告诉你的服务器让html文件表现得像php文件,但这不是最好的解决方案。)

因此,在重命名文件后,转到最上面的<html><!DOCTYPE html>之前,然后键入:

<?php
    if($_SERVER['REQUEST_METHOD'] == 'POST') {
        /*Creating variables*/
        $name = $_POST["name"];
        $address = $_POST["address"];
        $age = $_POST["age"];

        $dbhost = "localhost"; /*most of the time it's localhost*/
        $username = "yourusername";
        $password = "yourpassword";
        $dbname = "mydatabase";
        $mysql = mysqli_connect($dbhost, $username, $password, $dbname); //It connects
        $query = "INSERT INTO yourtable (name,address,age) VALUES $name, $address, $age";
        mysqli_query($mysql, $query);
    }
?>
<!DOCTYPE html>
<html>
<head>.......
....
    <form method="post">
        <input name="name" type="text"/>
        <input name="address" type="text"/>
        <input name="age" type="text"/>
    </form>
....

在执行以下代码之前,我假设您已经在该数据库中创建了一个数据库和一个表(包含列Name(varchar)、Age(INT)和Address(varchar)。此外,请在下面的代码中更新您的SQL Server名称、UserID、密码、DBname和表名。

在代码中。我使用了VBScript并将其嵌入HTML中。试试看!

<!DOCTYPE html>
<html>
<head>
<script type="text/vbscript">
<!--    
Sub Submit_onclick()
Dim Connection
Dim ConnString
Dim Recordset
Set connection=CreateObject("ADODB.Connection")
Set Recordset=CreateObject("ADODB.Recordset")
ConnString="DRIVER={SQL Server};SERVER=*YourSQLserverNameHere*;UID=*YourUserIdHere*;PWD=*YourpasswordHere*;DATABASE=*YourDBNameHere*"
Connection.Open ConnString
dim form1
Set form1 = document.Register
Name1 = form1.Name.value
Age1 = form1.Age.Value
Add1 = form1.address.value
connection.execute("INSERT INTO [*YourTableName*] VALUES ('"&Name1 &"'," &Age1 &",'"&Add1 &"')")
End Sub
//-->
</script>
</head>
<body>
<h2>Please Fill details</h2><br>
<p>
<form name="Register">
<pre>
<font face="Times New Roman" size="3">Please enter the log in credentials:<br>
Name:   <input type="text" name="Name">
Age:        <input type="text" name="Age">
Address:        <input type="text" name="address">
<input type="button" id ="Submit" value="submit" /><font></form> 
</p>
</pre>
</body>
</html>