用于检索和显示数据的PHP和SQL Server Express

用于检索和显示数据的PHP和SQL Server Express,php,sql,Php,Sql,我希望使用一个PHP页面,根据下拉列表中的选择检索数据,然后显示基于该选择的结果。我甚至不知道从哪里开始,除了我与数据库的连接。我也知道我必须有一个查询语句,就像在SQL中一样,这里有一点: $sql = "SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC, Notes, Date FROM cslogs.dbo.Logs WHERE ForteID = 'bs1441'"; bs1441只

我希望使用一个PHP页面,根据下拉列表中的选择检索数据,然后显示基于该选择的结果。我甚至不知道从哪里开始,除了我与数据库的连接。我也知道我必须有一个查询语句,就像在SQL中一样,这里有一点:

$sql = "SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC, Notes, Date
FROM   cslogs.dbo.Logs
WHERE  ForteID = 'bs1441'";
bs1441只是下拉列表中一个选项的示例。我不确定我会把什么放在那里,让它从列表中自动放在那里

提前谢谢你的帮助。抱歉,如果没有足够的信息继续下去,但不确定此时需要什么

编辑:

这就是我到目前为止所做的:

<form method="get" action="getlog.php"> 

<table width="300" border="0">
<tr>
<td> Forte ID:</td>
<td><select id="ForteID" name="ForteID">                    
                <option value="nc4682">nc4682</option>
                <option value="bs1441">bs1441</option>
                <option value="sp3212">sp3212</option>                 
    </select></td>
</tr>
</table>

<input type="submit" name="getLog" value="Get Log">
</form> 
</head>

<body>
</body>
</html>
<?php
$serverName = 'SRB-Nick_Desktop\SQLEXPRESS';
$connectionInfo = array('Database'=>'cslogs', 'UID'=>'cslogslogin', 'PWD'=>'123456');
$connection = sqlsrv_connect($serverName, $connectionInfo);

$result = sqlsrv_query( $connection, 
                'SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC, Notes, Date
                FROM    Logs
                WHERE   (ForteID = $ForteID)', 
                   array($ForteID));

while($row = sqlsrv_fetch_array($result))
{
echo($row['ForteID'] . ', '.
     $row['Disposition'] . ', '.
     $row['appNumber'] . ', '.
     $row['Finance_Num'] . ', '.
     $row['Num_Payments'] . ', '.
     $row['ACH_CC'] . ', '.
     $row['Notes'] . ', '.
     $row['Date']);
}
sqlsrv_close( $connection);
?>
如果有帮助,请告诉我

这里有几个步骤: 首先,您需要在中提交您的表格和选择。我不打算在这里讨论表单提交,但要研究一下

提交表单后,需要获取下拉列表的值并将其分配给变量

$value= $_POST['value'];
注意:这是一个基本示例,所以我没有添加regex或类似的东西

一旦有了变量($value),就可以将其放入SQL中

$sql = mssql_query($dbc,"SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC,    Notes, Date
FROM   cslogs.dbo.Logs
WHERE  ForteID = '$value'") or die("Query Error " . mssql_get_last_message());
因此,我们在这里处理查询$dbc是我选择用来表示数据库连接的变量,“or die”部分将告诉我查询是否有效

一旦有了工作查询,您就可以调用拉入数组的数据:

while ($row = mssql_fetch_array($sql)) {
然后您需要将查询结果分配给一个变量

$result1 = $row["RESULT1"];
$result2 = $row["RESULT2"];
大写字母是sql表中各列的标题。将它们分配给变量后,只要它们在while循环中,就可以对它们执行任何操作

$value= $_POST['value'];

$sql = mssql_query($dbc,"SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC,    Notes, Date
FROM   cslogs.dbo.Logs
WHERE  ForteID = '$value'") or die("Query Error " . mssql_get_last_message());

while ($row = mssql_fetch_array($sql)) {
    $result1 = $row["RESULT1"];
    $result2 = $row["RESULT2"];

    echo $result1;
    echo $result2;
}

答案很好,只是他没有使用mySQL。他正在使用MSSQL。谢谢Sammitch回顾他的问题我现在明白了。但是,如果我错了,请纠正我,它应该非常相似。用mssql替换mysqli?我不使用mssql,但我只是检查了php,语法看起来是一样的?我想这里的真正目标是让他走上正确的思想道路。理论上,是的。然而,在实践中,在MS沙盒(如.NET)之外使用MSSQL从来不像逻辑上应该的那么简单。没错,我已经更新了它以反映MSSQL,但Sammitch是正确的。我已经对我的问题进行了上述编辑。如果你能读到这篇文章,看看有什么不对。当我创建我的帖子页面时,mssql命令不起作用,我在这个论坛上也得到了帮助(再次感谢你的帮助!)你可能应该阅读。不要使用sqlsrv_uu函数。它们不仅目前不存在于PHP版本中,而且只有当SQL server的特定配置与PHP在同一台机器上运行时,它们才会起作用。
$value= $_POST['value'];

$sql = mssql_query($dbc,"SELECT ForteID, Disposition, appNumber, Finance_Num, Num_Payments, ACH_CC,    Notes, Date
FROM   cslogs.dbo.Logs
WHERE  ForteID = '$value'") or die("Query Error " . mssql_get_last_message());

while ($row = mssql_fetch_array($sql)) {
    $result1 = $row["RESULT1"];
    $result2 = $row["RESULT2"];

    echo $result1;
    echo $result2;
}