php - WP Sql 查询 - 这必须正确 :-(

标签 php mysql wordpress

我正在尝试在 Wordpress 中执行非常简单的 SQL 查询。我不知道为什么,但这不起作用:-(

$my_query = ("SELECT DISTINCT meta_value FROM wp_usermeta WHERE meta_key = 'schoolcountry'");
    $vysledek = $wpdb->get_results($my_query);
    foreach ($vysledek as $value){
       echo $value->schoolcountry . ", ";
    }

我在名为 wp_usermeta 的表中,其中有两列 - “meta_key”和“meta_value”。我需要根据其“meta_key”回显meta_value。

所以我的meta_key被称为“schoolcountry”,值应​​该是“CZ”......但是这个代码返回空没有“,,,,,,,,,”:-(

没有人知道,出了什么问题吗?

表结构图:enter image description here

以及 var_dump 的图片:enter image description here

最佳答案

查询本身没问题。问题在于您尝试显示结果的方式。

您正在尝试通过其meta_key(学校国家/地区)访问该值。您尝试访问的属性不存在。您需要改用列名称 (meta_value)。

示例:

foreach ( $vysledek as $value ) {
    echo $value->meta_value . ", ";
}

另一点值得提出的是,通过为循环中的每个值附加逗号,您将在末尾有一个额外的逗号。

value1, value2, value3, 

我很想使用 implode() 来解决这个问题。

echo implode( ', ', array_map( function( $v ) {
    return $v->meta_value;
}, $vysledek );

这里我们使用array_map返回一个包含所有元值的新数组。然后,Implode 会将它们连接在一起,末尾不带多余的逗号。

关于php - WP Sql 查询 - 这必须正确 :-(,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45656799/

相关文章:

php - 如何让我的PHP/mySQL注册更安全?

javascript - 对页面加载的奇怪影响

PHP根据MySQL记录重定向用户登录

php - 更改为响应式站点

PHP mysqli() 不工作

PHP/MySQL 多对多关系——下一步在这里

javascript - 我的 jQuery 脚本似乎正在加载,但不工作

css - 从文本到下划线的填充或空格

php - 所选日期(周一、周二、周三等)的数据

php - 如何获取特定类别中点赞数超过 X 的 YouTube 视频列表