在下面的代码中,当在表格中找不到$ host时,我希望页面重定向到我设置的另一个页面。考虑到下一行的“die(mysql_error())”,我一直在苦苦思索如何做到这一点。任何帮助将不胜感激!
$lookup = "SELECT DISTINCT `Id` FROM `google_accountid` WHERE `host_name` = '$host'";
$retailer_query = mysql_query($lookup) or die(mysql_error());
答案 0 :(得分:2)
我想你可以试试这个:
$num_rows = mysql_num_rows($retailer_query);
if ($num_rows == 0) header("Location: " . your_new_page);
答案 1 :(得分:2)
$num_rows = mysql_num_rows($retailer_query);
if ($num_rows == 0)
{
header("Location: yourpage.php");
exit();
}
答案 2 :(得分:2)
如果您只想检查select查询是否返回0行或更多行,请使用mysql_num_rows()
;您不必在select语句中指定任何列:
$lookup = "SELECT 1 FROM `google_accountid` WHERE `host_name` = '$host'";
$retailer_query = mysql_query($lookup) or die(mysql_error());
if(mysql_num_rows($retailer_query) === 0)
{
header("Location: whatever");
die;
}
或者,您可以使用以下示例,该示例允许您在稍后阶段使用返回的记录:
$lookup = "SELECT `Id` FROM `google_accountid` WHERE `host_name` = '$host'";
$retailer_query = mysql_query($lookup) or die(mysql_error());
$row = mysql_fetch_assoc($retailer_query);
if($row === false)
{
header("Location: whatever");
die;
}
echo $row["Id"];
在将任何内容发送到浏览器之前,应先处理 header()
个语句。
答案 3 :(得分:0)
if ($row["Id"] == NULL) {
header( 'Location: <redirect URL>' ) ;
}