如何使用HTML& amp;搜索和显示SQL数据库的结果ASP?

时间:2013-02-06 08:54:30

标签: html sql-server-2005 search asp-classic

我目前正在创建一个带有Web前端的新数据库。该数据库的关键设施之一是搜索和恢复结果的能力。我已经设置了数据库并用信息填充了所有表格。我创建了所需的所有信息的视图(按照我工作的公司的指示)。我已经设置了关于我希望它如何看的页面,这里是代码:

<!-- #include file="inc.head.asp" -->
<html>

<head>
</head>

<body>
<h1><i>Find User by Name</i></h1>
<div id="displayBox" style="border: 3px solid #9C9595; height: 500px; width: 425px" class="blackBox">

<h2> Search for User </h2>

<form name="Enter New Model" method="Post" action="">

<table>
<tr><td><h3>Name: </td></h3>
<td><input type="text" name="Model" size="50"></td></tr>
<tr><td><h3>Section: </td></h3>
<td><input type="text" name="NextUpgrade" size="50"></td></tr>
<tr><td><h3>Directorate: </td></h3>
<td><input type="text" name="Stock" size="50"></td></tr>
</table>
&nbsp;      
<table>
<textarea name="UserHistory" cols="50" rows="10"></textarea></tr>
</table>

<input type="submit" name="Submit" value="Search">
</body>
<br>
<br>
<h3><a href="page.index.asp">Return Home</a></h3>
</div>
</body>

</html>

所以我希望能够在textarea中显示结果。我现在只会使用Surname进行搜索,但还有其他搜索要做,但是一旦完成了这个搜索,我就可以为其他搜索进行调整。我非常感谢您给予我的任何帮助。

提前致谢!

1 个答案:

答案 0 :(得分:0)

你必须根据数据库连接的类型为自己找出一些东西,但基础知识是这样的(未经测试):

<%
    Dim strUserHistory: strUserHistory = ""
    Dim strModel : Trim(request.form("Model"))
    Dim strNextUpgrade : Trim(request.form("NextUpgrade"))
    Dim strStock : Trim(request.form("Stock"))

    If strModel<>"" OR strNextUpgrade<>"" OR strStock<>"" Then
        Dim strQuery: strQuery = "SELECT Username FROM Users where Model= """ & strModel & """ OR NextUpgrade= """ & strNextUpgrade & """ OR Stock= """ & strStock & """

        Dim objConn: Set objConn = Server.CreateObject("ADODB.Connection")
        Dim DSN: DSN="Driver={SQL Server};Server=DATABASEIP;Database=DATABASENAME;UID=USERNAME;PWD=PASSWORD"
        objConn.Open(DSN)

        Dim objRS: Set objRS = objConn.Execute(strSQL)

        If objRS.EOF Then
             strUserHistory = "No Users found"
        Else
            Do While Not objRS.EOF
                strUserHistory = strUserHistory & objRS.Fields("Username").value & "\n"
                objRS.MoveNext()
            Loop
        End If
    End If
 %>

将它放在页面顶部(或从中创建一个函数)并更新HTML表单字段,如:

<input type="text" name="Model" size="50" value="<%=strModel%>">
<input type="text" name="NextUpgrade" size="50" value="<%=strNextUpgrade %>">
<input type="text" name="Stock" size="50" value="<%=strStock%>">
<textarea name="UserHistory" cols="50" rows="10"><%=strUserHistory %></textarea>

有点警告,如果你把它暴露给邪恶的互联网,你将不得不照顾SQL注入等。一个很好的Stackoverflow question about this显示各种预防方法。

但是,这应该让你开始。