PHP函数取决于MySQL数据条目的存在

时间:2011-10-26 20:11:45

标签: php mysql null include

我通过Facebook为我的一位客户编写了每周一次的琐事计划。

我有一些代码注释了我们在需要时显示获胜者的位置。目前我只是删除注释括号并在显示时更新。我正在努力做到这一点,所以非精明的人可以处理更新,所以我把我的代码转移到了包含:

赢家Display.php的

我正在尝试编写一个函数,以便如果在MySQL中设置了胜利者,则它包含内联文件,如果数据库中的获胜者字段为空,则不会。

到目前为止,我有什么想法?

<?php 
$target="3";
$myDataID = mysql_query("SELECT topic_desc from ref_links WHERE ref_categories_id = '$target' AND topic_name = '$property'", $connectID); 
while ($row = mysql_fetch_row($myDataID)) {
    $displayvalue = $row ['topic_desc'];
}
if ( $displayvalue != 'null') {
    include('../includes/winner-display.php');
} else {
}
?>

好的,感谢帮助人们,让它像以下一样工作:

<?php 
$target="3";
$myDataID = mysql_query("SELECT topic_desc from ref_links WHERE ref_categories_id = '$target' AND topic_name = '$property'", $connectID); 
    while ($row = mysql_fetch_row($myDataID)) {
    foreach ($row as $field) {
        if ($field != null) {
            include('../includes/winner-display.php');
        }
    }
}

?>

1 个答案:

答案 0 :(得分:0)

你绝对可以在if中包含一个include。您发布的解决方案应该按照您的意愿工作,尽管我个人会使用函数而不是包含完全独立的文件(尽管这是个人偏好)。

要使其工作,您只需删除'null'周围的引号。

<?php 
$target="3";
$myDataID = mysql_query("SELECT topic_desc from ref_links WHERE ref_categories_id = $target' AND topic_name = '$property'", $connectID); 
while ($row = mysql_fetch_row($myDataID)) {
    $displayvalue = $row ['topic_desc'];
}
if ( $displayvalue != null) {
    include('../includes/winner-display.php');
}
?>

请记住,如果您的查询返回多行,则只保留最后一行。我不知道这是否是您想要的功能(在这种情况下,您可以进行一些更改,只是让我编辑我的答案),但我没有改变它。