【问题标题】:Wordpress: Retrieve a value from databaseWordpress:从数据库中检索值
【发布时间】:2016-01-04 18:39:02
【问题描述】:

我正在尝试使用此查询从数据库中检索我的字段的文本值:

<input type="text" name="last_link" id="last_link" value="<?php global $wpdb; $user_ID = get_current_user_id(); $result= $wpdb->get_results( 'SELECT last_link FROM users WHERE ID = $user_ID'); echo $result; ?>" 

我收到的是:

我搜索了很多,但我只能找到Class Reference/wpdb

我没能找到我的错误。

【问题讨论】:

    标签: php sql database wordpress


    【解决方案1】:

    使用$wpdb-&gt;get_var('your query') 代替$wpdb-&gt;get_results()

    我发现查询中的错误是您忘记了从 wordpress 预定义表中检索信息所需的表前缀。

    global $table_prefix$wpdb 一起使用 像这样:global $wpdb,$table_prefix

    还要确保将您的列 last_link 添加到 tableprefix_users 的表中
    根据您的要求,使用以下代码检索信息。

    <?php
    
    global $wpdb,$table_prefix;
    $user_ID = get_current_user_id();
    $last_link = $wpdb->get_var('SELECT last_link FROM '.$table_prefix.'users WHERE ID = '.$user_ID);
    ?>
    
    <input type="text" name="last_link" id="last_link" value="<?php echo $last_link;?>">
    

    如文档中所述

    通用的,多行结果可以从数据库中提取 get_results。该函数返回整个查询结果作为一个数组。 该数组的每个元素对应查询结果的一行 并且,像 get_row 一样,可以是对象、关联数组或 编号数组。如果没有找到匹配的行,或者如果有 数据库错误,返回值将是一个空数组。如果你的 $query 字符串为空,或者您传递了无效的 $output_type,NULL 将 被退回。

    【讨论】:

    • get_var() 什么也不返回。也许问题出在我的查询中?
    • 欢迎您 :) 我相信您没有得到答案,只有信息 ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-17
    • 2015-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多