【问题标题】:Wordpress DB select always returns empty [duplicate]Wordpress DB select总是返回空[重复]
【发布时间】:2019-11-25 11:58:03
【问题描述】:

我制作了一个自定义函数来使用 WP 方法从数据库中选择数据。它看起来像这样;

function CheckUser($name){
                /*DB connection */
                $result = $mydb->get_results("SELECT *FROM users WHERE name = ".$name.";");
                if(!empty($result)){
                    echo "OK!";
                }
        }

这是代码中的一部分:

/*This part is in foreach so thats why I am using $obj
$name_string = $obj->first_name." ".$obj->surname;
Prombutne($name_string);

但每次我没有从数据库收到任何东西时,当我将 !empty 更改为 empty 时,我就可以了,所以 Select 函数总是返回空的。

【问题讨论】:

  • 去掉WHERE子句会得到结果吗?
  • 是的,如果我手动输入用户名而不是像变量一样传递它,也会得到结果。
  • 您应该使用参数来传递值。
  • 试试这个:$result = $mydb->get_results("SELECT *FROM users WHERE name = '$name'");

标签: php mysql sql wordpress


【解决方案1】:

替换

$result = $mydb->get_results("SELECT *FROM users WHERE name = ".$name.";");

$result = $mydb->get_results("SELECT * FROM users WHERE name = '".$name."'");

您必须在 '*' 之后和 'table_name' 之前留出空格,并且在条件下您使用的是字符串的名称字段,因此您需要在引号中传递它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-22
    • 2017-06-28
    • 1970-01-01
    • 2018-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多