修罗论坛添加注册表单项 涉及到的文件有:
1、user-create.html
2、user.php
3、zh-cn/bbs.php(需要在这个文件中新增注册表单项的文字说明,例:'company'=>'公司',)
主要的流程是:
1、首先要了解xiuno提交表单的流程,
user-create.html(提交表单)-->user.php-->封装成字符串-->db.func.php(链接数据库)
2、然后要修改代码,将新增加的字段的数据使用POST方法提交给controler层,
2.1 修改user-create.html:
在user-create.html中添加一个新的表单项目;这里我添加的表单项是company(具体代码如下):
<!--{hook user_create_email_after.htm}-->
<!--新增的注册表单项,图标可以在阿里的icon开放平台上找到(https://www.iconfont.cn/)-->
<div class="form-group input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="icon icon-linkedin icon-fw"></i></span>
</div>
<input type="text" class="form-control" placeholder="<?php echo lang('company');?>" name="company" id="company" required>
</div>
2.2 修改user.php
在method=post的if语句代码块中定义变量
else if($method == 'POST') {
// hook user_create_post_start.php
$email = param('email');
$username = param('username');
$password = param('password');
$code = param('code');
$company = param('company');
将新添加的字段加入到$_user多维数组中
$_user = array (
'company' => $company,
'username' => $username,
'email' => $email,
'password' => $pwd,
'salt' => $salt,
'gid' => $gid,
'create_ip' => $longip,
'create_date' => $time,
'logins' => 1,
'login_date' => $time,
'login_ip' => $longip,
);
3、最终要在xiuno数据库bbs_user表中新增列用来存放增加的表单项信息
4、这个教程只是如何新增注册表单项,并没有关于怎么利用或者展示新增表单项的内容,希望有做到更进一步的大佬不吝赐教。
5、然后就可以测试啦
事实证明xiuno.php中大量弱相关(高内聚、低耦合)的函数非常适合二开。