English 中文(简体)
当结果栏为空时显示信件
原标题:Displaying a message when resultset is empty

在下面的代码中, 如果结果栏是空的, 则代码会继续处理结果 。 相反, 我想要的只是显示“ 查询失败 ”, 如果没有结果 。

$connInfo = array( UID =>$user,  PWD =>$passwd,  Database =>$database);
$dbconn = sqlsrv_connect($server, $connInfo);

if($dbconn === false){
    die("<br />Error connecting to the database.<br />");
}
//SQL Query
$query = "SELECT ... FROM somehwere";

//Run Query
$qresult = sqlsrv_query($dbconn, $query);
if($qresult === false) {
    die( Query failed. );
}

?>
...more code...
问题回答

如果找不到行, $结果将包含空结果集, 但它仍然不会评价为假 。

尝试将此函数替换为 :

http://www.php.net/manual/en/conference.sqlsrv-num-rows.php" rel=“nofollow'>http://www.php.net/manual/en/conference.sqlsrv-num-rows.php

因此:

if(!sqlsrv_num_rows($qresult)) {
    die( Query failed. );
}

取代:

if($qresult === false) {
    die( Query failed. );
}

它不显示“ 查询失败”, 因为查询没有失败。 它只返回 0 行。 因此, 解决方案将使用 :

$row_count = sqlsrv_num_rows( $qresult);
if ($row_count > 0){
// display stuff
}
else{
// throw exception
}

谢谢。 我用 sqlsrv_has_rows () 函数来操作它 。

if($qresult !== NULL) {
    $rows = sqlsrv_has_rows($qresult);
    if($rows === true) {
        //display success
    } else {
        //display error
    }
}

由于某种原因,我无法使sqlsrv_num_rows () 为我妥善工作。





相关问题
what is wrong with this mysql code

$db_user="root"; $db_host="localhost"; $db_password="root"; $db_name = "fayer"; $conn = mysqli_connect($db_host,$db_user,$db_password,$db_name) or die ("couldn t connect to server"); // perform query ...

Users asking for denormalized database

I am in the early stages of developing a database-driven system and the largest part of the system revolves around an inheritance type of relationship. There is a parent entity with about 10 columns ...

Easiest way to deal with sample data in Java web apps?

I m writing a Java web app in my free time to learn more about development. I m using the Stripes framework and eventually intend to use hibernate and MySQL For the moment, whilst creating the pages ...

join across databases with nhibernate

I am trying to join two tables that reside in two different databases. Every time, I try to join I get the following error: An association from the table xxx refers to an unmapped class. If the ...

How can I know if such value exists in database? (ADO.NET)

For example, I have a table, and there is a column named Tags . I want to know if value programming exists in this column. How can I do this in ADO.NET? I did this: OleDbCommand cmd = new ...

Convert date to string upon saving a doctrine record

I m trying to migrate one of my PHP projects to Doctrine. I ve never used it before so there are a few things I don t understand. In my current code, I have a class similar to this: class ...

热门标签