【问题标题】:PHP , sqlsrv connection not workingPHP,sqlsrv 连接不工作
【发布时间】:2016-02-12 19:44:02
【问题描述】:

您好我正在尝试通过 php 连接到 sql server,根据搜索字符串搜索并显示结果。以下是index.php

我成功地通过编写查询而不是通过此搜索表单单独获取结果

下面是search.php

  <?php

$button = $_GET ['submit'];
$search = $_GET ['search']; 

if(!$button)
echo "you didn't submit a keyword";
else
{
if(strlen($search)<=1)
echo "Search term too short";
else{
echo "You searched for <b>$search</b> <hr size='1'></br>";

}
$serverName = "xxxx";
$connectionInfo = array( "Database"=>"xxxx", "UID"=>"xxxx", "PWD"=>"xxxx");
$conn = sqlsrv_connect( $serverName, $connectionInfo );

$Query = "SELECT employee_name FROM employees WHERE employee_name like '%".$search."%'";
$run = sqlsrv_query($conn,$Query);


$foundnum = sqlsrv_num_rows($run);

if ($foundnum==0)
echo "Sorry, there are no matching result for <b>$search</b>.</br></br>1.";
else
{
echo "$foundnum results found !<p>";

while($row = SQLSRV_FETCH_ARRAY($run,SQLSRV_FETCH_ASSOC))
{
    echo $row['Employee_name'];
    }
sqlsrv_free_stmt($run);
}
}
?>

【问题讨论】:

  • 你得到什么类型的错误?
  • 没有得到任何错误,但也没有得到任何结果
  • 您有$run = sqlsrv_query($conn,$Query);,但您从不检查它是否返回false,因此您无法确定是否有错误。您没有得到任何回报的事实表明存在您尚未处理的错误。 TL;DR:处理错误。
  • 请参阅manual 以检查连接对象中的错误。可能是任意数量的问题:服务器名称、远程设置、用户授权……
  • 我能够使用相同的连接运行并获得结果,但查询是从员工中选择前 10 名员工姓名。我用 ths 来检查连接是否正常

标签: php sql-server search


【解决方案1】:

使用

这个用于mysqli连接

$con = mysqli_connect("localhost","my_user","my_password","my_db");

这个用于mysql连接

$con = mysql_connect("localhost","my_user","my_password","my_db");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 2015-09-16
    • 2021-11-02
    • 1970-01-01
    • 2014-05-14
    相关资源
    最近更新 更多