获取推荐人ID

时间:2013-03-19 09:19:54

标签: php mysql wordpress-plugin referrals

我试图修改我的wordpress插件,以跟踪谁改名当前登录用户的名称。

到目前为止,我设法构建了下面的代码,但我对任何编码都很新,如果我得到一些帮助,我会非常感激。

想法是从当前用户获取“parent_user_id”(引用者ID),他们使用此ID获取login_ID。

Actualy此代码输出:“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;    
    }
}

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

1 个答案:

答案 0 :(得分:0)

请试试这个:

$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);

你会得到数组中的值。一旦你看到值使用数组的正确索引来获取值。