如果 MySQL 查询未返回任何结果,则返回值


return value if mysql query returns no results

好的,所以我正在尝试这样做,以便如果输入用户名存在以获取该用户名的详细信息,并且不存在用户名告诉我......

到目前为止,它会告诉我用户名是否存在,但如果它不存在,则不会......

所以基本上如果查询返回零结果,我如何让它说"嘿,没有匹配"?

到目前为止我的代码...

$user = $_POST['txtUsername'];
$sql = "SELECT * FROM `weaponstreat` WHERE username='$user'";
$rows = $db->query($sql); while ($record = $db->fetch_array($rows)) {
    if ($record['tid'] === NULL) { echo "empty"; } else { echo "full"; }
}
$user = $_POST['txtUsername'];
$sql = "SELECT COUNT(1) rcount FROM `weaponstreat` WHERE username='$user'";
$rows = $db->query($sql); while ($record = $db->fetch_array($rows)) {
    if ($record['rcount'] == 0) { echo "empty"; } else { echo "full"; }
}

只需检查是否返回任何行:

if ($db->num_rows() == 0)
{
    // No results
 }
else
{
    while ($record = $db->fetch_array($rows)) {
        if ($record['tid'] === NULL) { echo "empty"; } else { echo "full"; }
    }
}
$user = $_POST['txtUsername'];
$sql = "SELECT * FROM `weaponstreat` WHERE username='$user'";
$rows = $db->query($sql);
// add a counter variable 
$counterRecords = 0;
while ($record = $db->fetch_array($rows)) {
    $counterRecords++;
}
if($counterRecords==0)
 echo "empty";
else echo "full";
$user = $_POST['txtUsername'];
$query = mysql_query ("SELECT * FROM weaponstreat WHERE username='$user' ORDER BY tid DESC");
if ( mysql_num_rows( $query ) > 0 )
{
    // Process and display username details
}
else
{
    echo "That username does not exist";
}