Php 如何使当前用户全名显示在表单验证消息中
我正在使用一个名为Ultimate Membership Pro的Wordpress插件,它使用Ajax调用来验证注册表中的用户名。但是,当已注册的用户名尝试再次注册时,我希望检索用户的全名 示例-我希望验证消息显示:此用户名已由John Doe使用 我试图在插件目录中操纵一个名为execute-membership-pro.php的文件名Php 如何使当前用户全名显示在表单验证消息中,php,wordpress,plugins,Php,Wordpress,Plugins,我正在使用一个名为Ultimate Membership Pro的Wordpress插件,它使用Ajax调用来验证注册表中的用户名。但是,当已注册的用户名尝试再次注册时,我希望检索用户的全名 示例-我希望验证消息显示:此用户名已由John Doe使用 我试图在插件目录中操纵一个名为execute-membership-pro.php的文件名 //I added this code under the function //I called a global method
//I added this code under the function
//I called a global method
global $current_user;
$uid = get_user_by('login', $value);
case 'user_login':
if (!validate_username($value)){
$return = $register_msg['ihc_register_error_username_msg'];
}
if (username_exists($value)) {
//I concatenate the error message with the input username to get the user ID. But i need the user FirstName and Lastname
$return = $register_msg['ihc_register_username_taken_msg'] . $uid->ID;
}
break;
function ihc_check_value_field($type='', $value='', $val2='', $register_msg=array()){
//I called a global method
global $current_user;
$uid = get_user_by('login', $value);
if (isset($value) && $value!=''){
switch ($type){
case 'user_login':
if (!validate_username($value)){
$return = $register_msg['ihc_register_error_username_msg'];
}
if (username_exists($value)) {
//I am able to get the user ID But i need First Name and last Name
$return = $register_msg['ihc_register_username_taken_msg']. $uid->ID;
}
break;
case 'user_email':
if (!is_email($value)) {
$return = $register_msg['ihc_register_invalid_email_msg'];
}
if (email_exists($value)){
$return = $register_msg['ihc_register_email_is_taken_msg'];
}
$blacklist = get_option('ihc_email_blacklist');
if(isset($blacklist)){
$blacklist = explode(',',preg_replace('/\s+/', '', $blacklist));
if( count($blacklist) > 0 && in_array($value,$blacklist)){
$return = $register_msg['ihc_register_email_is_taken_msg'];
}
}
break;
case 'confirm_email':
if ($value==$val2){
$return = 1;
} else {
$return = $register_msg['ihc_register_emails_not_match_msg'];
}
break;
case 'pass1':
$register_metas = ihc_return_meta_arr('register');
if ($register_metas['ihc_register_pass_options']==2){
//characters and digits
if (!preg_match('/[a-z]/', $value)){
$return = $register_msg['ihc_register_pass_letter_digits_msg'];
}
if (!preg_match('/[0-9]/', $value)){
$return = $register_msg['ihc_register_pass_letter_digits_msg'];
}
} else if ($register_metas['ihc_register_pass_options']==3){
//characters, digits and one Uppercase letter
if (!preg_match('/[a-z]/', $value)){
$return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
if (!preg_match('/[0-9]/', $value)){
$return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
if (!preg_match('/[A-Z]/', $value)){
$return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
}
//check the length of password
if($register_metas['ihc_register_pass_min_length']!=0){
if (strlen($value)<$register_metas['ihc_register_pass_min_length']){
$return = str_replace( '{X}', $register_metas['ihc_register_pass_min_length'], $register_msg['ihc_register_pass_min_char_msg'] );
}
}
break;
case 'pass2':
if ($value==$val2){
$return = 1;
} else {
$return = $register_msg['ihc_register_pass_not_match_msg'];
}
break;
case 'tos':
if ($value==1){
$return = 1;
} else {
$return = $register_msg['ihc_register_err_tos'];
}
break;
default:
//required conditional field
$check = ihc_required_conditional_field_test($type, $value);
if ($check){
$return = $check;
} else {
$return = 1;
}
break;
}
if (empty($return)){
$return = 1;
}
return $return;
} else {
$check = ihc_required_conditional_field_test($type, $value);//Check for required conditional field
if ($check){
return $check;
} else {
return $register_msg['ihc_register_err_req_fields'];
}
}
}
add_action("wp_ajax_nopriv_ihc_ap_reset_custom_banner", "ihc_ap_reset_custom_banner");
add_action('wp_ajax_ihc_ap_reset_custom_banner', 'ihc_ap_reset_custom_banner');
//我在函数下添加了此代码
//我调用了一个全局方法
全局$当前用户;
$uid=get_user_by('login',$value);
案例“用户登录”:
如果(!validate_username($value)){
$return=$register\u msg['ihc\u register\u error\u username\u msg'];
}
如果(用户名_存在($value)){
//我将错误消息与输入用户名连接起来以获取用户ID。但我需要用户名FirstName和Lastname
$return=$register\u msg['ihc\u register\u username\u take\u msg']。$uid->ID;
}
打破
函数ihc检查值字段($type='',$value='',$val2='',$register\u msg=array()){
//我调用了一个全局方法
全局$当前用户;
$uid=get_user_by('login',$value);
如果(isset($value)&&$value!=''){
交换机($类型){
案例“用户登录”:
如果(!validate_username($value)){
$return=$register\u msg['ihc\u register\u error\u username\u msg'];
}
如果(用户名_存在($value)){
//我可以得到用户ID,但我需要名字和姓氏
$return=$register\u msg['ihc\u register\u username\u take\u msg']。$uid->ID;
}
打破
“用户电子邮件”案例:
如果(!is_电子邮件($value)){
$return=$register_msg['ihc_register_invalid_email_msg'];
}
如果(电子邮件_存在($value)){
$return=$register_msg['ihc_register_email_is_take_msg'];
}
$blacklist=get_选项(“ihc_电子邮件_黑名单”);
if(isset($blacklist)){
$blacklist=explode(',',preg_replace('/\s+/',',$blacklist));
if(count($blacklist)>0&&in_数组($value,$blacklist)){
$return=$register_msg['ihc_register_email_is_take_msg'];
}
}
打破
“确认电子邮件”案例:
如果($value==$val2){
$return=1;
}否则{
$return=$register_msg['ihc_register_emails_not_match_msg'];
}
打破
案例“pass1”:
$register_metas=ihc_return_meta_arr('register');
if($register\u metas['ihc\u register\u pass\u options']==2){
//字符和数字
如果(!preg_match('/[a-z]/',$value)){
$return=$register\u msg['ihc\u register\u pass\u letter\u digits\u msg'];
}
如果(!preg_匹配('/[0-9]/',$value)){
$return=$register\u msg['ihc\u register\u pass\u letter\u digits\u msg'];
}
}else if($register\u metas['ihc\u register\u pass\u options']==3){
//字符、数字和一个大写字母
如果(!preg_match('/[a-z]/',$value)){
$return=$register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
如果(!preg_匹配('/[0-9]/',$value)){
$return=$register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
如果(!preg_match('/[A-Z]/',$value)){
$return=$register_msg['ihc_register_pass_let_dig_up_let_msg'];
}
}
//检查密码的长度
if($register\u metas['ihc\u register\u pass\u min\u length']!=0){
如果(strlen($value)$user\u object->display\u name
是您要查找的内容
鉴于此,在错误消息中显示诸如名字和姓氏之类的用户数据可能不是一个好主意。$user\u object->display\u name
是您要查找的
考虑到这一点,在错误消息中透露用户数据(如名字和姓氏)可能不是一个好主意。从安全角度来看,向一个完全陌生的人透露帐户持有人的姓名是一个非常糟糕的主意。完全不行。我完全同意你的意见。但我无能为力,因为这是客户的要求。a v从安全角度来看,向完全陌生的人透露账户持有人的姓名是一个非常糟糕的主意。完全禁止。我完全同意你的观点。但我无能为力,因为这是客户的要求。这是要求的一部分,用户名将被告知一个账号,该账号将提供给可能5组人ple访问系统,因此他们希望通知新用户,他们试图注册的账号之前已由John Doe注册。因此,用户可以联系John Doe并向John Doe请求密码。这是要求的一部分,用户名将被告知将提供给的账号可能有5组人访问系统,因此他们希望通知新用户他们试图注册的账号之前已由John Doe注册。因此,用户可以联系John Doe并向John Doe请求密码。