php - 获取推荐人 ID

标签 php mysql wordpress referrals

我正在尝试修改我的这个 wordpress 插件以跟踪推荐当前登录用户的名称。

到目前为止,我设法构建了下面的代码,但我对任何类型的编码都是新手,如果能得到一些帮助,我将不胜感激。

想法是从当前用户那里获取“parent_user_id”(推荐人 ID),他们使用这个 ID 来获取 login_ID。

实际上这段代码输出的是:“Referred by: Array”

function wpmlm_display_referrer() {
    global $wpdb, $user_ID, $current_user;
    if(isset($_GET['current_user_id']) && !empty($_GET['current_user_id'])) {
        $current_user_id = $_GET['current_user_id'];
    } else {
        $current_user_id = $current_user->ID;
    }

    # Logged in user
    if ( is_user_logged_in() == true ) {            

        $get_id = "SELECT parent_user_id FROM mlm WHERE user_id=%d".$current_user_id;
        $get_name = "SELECT login_id FROM mlm WHERE user_id=%d".$get_id;
        $ref = $wpdb->get_results($get_name);

        return 'Referred by: '.$ref;    
    }
}

感谢您在这种情况下可以提供的任何帮助。

最佳答案

请试试这个:

$get_id = "SELECT parent_user_id FROM mlm WHERE user_id='".$current_user_id ."'";
$get_name = "SELECT login_id FROM mlm WHERE user_id='".$get_id ."'";

我刚刚编辑了查询。 现在第二件事是 $get_id 是包含查询的变量,所以如果你想编写子查询,请像下面这样写:

如果子查询中的 parent_user_id 将返回 1 个值

$query = "SELECT login_id FROM mlm WHERE user_id=(SELECT parent_user_id FROM mlm WHERE user_id='".$current_user_id ."')";

如果子查询将返回多个值,请在下面使用:

$query = "SELECT login_id FROM mlm WHERE user_id IN (SELECT parent_user_id FROM mlm WHERE user_id='".$current_user_id ."')";

然后尝试 print_r($ref);

您将获得数组中的值。一旦您看到该值,就使用数组的正确索引来获取该值。

关于php - 获取推荐人 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15495509/

相关文章:

css - WordPress 2014 主题第 3 级翻转在小型显示器上离开屏幕

php - 在有序数组中添加额外的数字

php - 如何将数据库角色添加到 FOSUserBundle

php - MySQL 计算具有两个重复列值的行

mysql - 从 WordPress 连接到第二个数据库

php - 使用 PolyLang 按类别和语言获取帖子

php - 无法与 WordPress.org 建立安全连接 请联系您的服务器管理员

php - MySQL输入TINYINT语法

php - 如何在 PHP 中通过 ODBC 为普适数据库设置编码?

mysql - 备份后不显示 innoDB tablew