1、添加前台注册选项 目录:(themes/default/user_passport.dwt)
$field.is_need 判断是否必须
2、添加新字段到$other 数组 目录:(/user.php)
在 ($action == 'act_register')
$other['home_phone'] = isset($_POST['extend_field4']) ? $_POST['extend_field4'] : '';
$other['mobile_phone'] = isset($_POST['extend_field5']) ? $_POST['extend_field5'] : '';
后面添加:$other['company'] = isset($_POST['extend_field7']) ? $_POST['extend_field7'] : '';
3、添加合法字段:目录(includes/lib_passport.php)
//定义other合法的变量数组
$other_key_array = array('msn', 'qq', 'office_phone', 'home_phone', 'mobile_phone');
后面添加:新字段字符串
4、在数据表 ecs_users中添加新字段(无所谓顺序)
5.其次是用户中心的修改页面
http://192.168.0.37:84/user.php?act=profile 通过这个地址我们应该找到user.php 文件里面的 act=profile 进行查看
找到它 elseif ($action == 'profile')
在它里面找到$smarty->assign('profile', $user_info);在这个前面进行打印数组print_r($user_info);用户的信息
发现数组里面并没有我们想要的company_name的键值所以我们应该找到哪里给$user_info赋值的,
所以就又找到$user_info = get_profile($user_id); 继续找到这个函数include_once(ROOT_PATH . 'includes/lib_transaction.php');
就在它里面发现这里面就是提取的用户的信息
$sql = "SELECT user_name, birthday, sex, question, answer, rank_points, pay_points,user_money, user_rank,".
" msn, qq, office_phone, home_phone, mobile_phone, passwd_question, passwd_answer,company_name ".
"FROM " .$GLOBALS['ecs']->table('users') . " WHERE user_id = '$user_id'";
在这个sql里面进行添加我们所想要却没有的company_name 字段打印看看是否有我们想要的数据print_r($infos);于$infos = $GLOBALS['db']->getRow($sql);后
发现有我们需要的数据但是页面上还是没有我们的数据,不用着急继续往下看发现return $info 而不是$infos
这里我们明白了还没有对$info['company_name'] 赋予我们的 $infos['company_name']值呢!
呵呵 !再重新打印一下 $info 发现数据有了! 基本搞定了就能显示了!
下来我们返回user.php elseif ($action == 'profile') 下面 发现有个switch case 好像是少了一个我们的 company_name我们加上他
根据你的情况进行改变case 101: $extend_info_list[$key]['content'] = $user_info['company_name']; break;
打印print_r($info); 于$smarty->assign('profile', $user_info);之前。 发现没有问题了!页面应该也能够显示数据了!呵呵 !个人中心部分的显示也就基本搞定了!
id="extend_field{$field.id}i" >{$field.reg_field_name}
发表回复