【发布时间】:2015-05-20 19:29:55
【问题描述】:
我正在尝试创建一个函数来检查数据库中的数据。如果结果为空,则继续执行代码。否则,中止。
这是我的代码示例。
function check_if_blocked(){
global $wpdb;
$user = '1';
$results = $wpdb->get_results("SELECT * FROM mytable WHERE user = $user");
if(empty($results)){
$var = false;
} else {
$var = true;
}
return $var;
}
函数 check_if_blocked 将在整个插件中多次使用。
这是我计划如何使用 check_if_blocked() 的示例..
function msg_form(){
if(check_if_blocked(){
echo '<form action="" method="post">
<input type="text" name="msg">
<input type="submit" name="submit" value="send">';
}
}
不管我如何切换真、假,甚至 if(!check_if_blocked...
【问题讨论】:
-
问题#1:
$user不存在于scope of your function 中,考虑将其作为argument 传递 -
Regradless of "Problem #1" 代码不起作用。
-
我不知道答案,但所有这些代码:
if(empty($results)){ $var = false; } else { $var = true; } return $var;可能会更改为return !empty($results); -
感谢您的有用提示。飞溅58。
-
wpdb 来自 wordpress 吗?我问是因为 wordpress 中的用户表通常没有名为“用户”的列。我怀疑这是原因,但可能值得检查。
标签: php if-statement return-value