/[LeafOK_CVS]/fenglin/bbs/reg_user.php
ViewVC logotype

Contents of /fenglin/bbs/reg_user.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations)
Tue Apr 1 03:38:16 2025 UTC (11 months, 2 weeks ago) by sysadm
Branch: MAIN
Changes since 1.1: +1 -1 lines
Refine

1 <?
2 require_once "../lib/common.inc.php";
3 require_once "../lib/lml.inc.php";
4 require_once "./session_init.inc.php";
5 ?>
6 <html>
7 <head>
8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
9 <title>新用户注册</title>
10 <link rel="stylesheet" href="css/default.css" type="text/css">
11 </head>
12 <script src="../js/polyfill.min.js"></script>
13 <script src="../js/axios.min.js"></script>
14 <script type="text/javascript">
15 function vn_refresh(img)
16 {
17 img.src = img.src;
18 return false;
19 }
20
21 function reset_flag()
22 {
23 var s = document.getElementsByName("err_msg");
24
25 s.forEach(element => {
26 element.innerHTML = "";
27 });
28 }
29
30 function regsub(f)
31 {
32 reset_flag();
33 instance.post('reg_user_service.php', {
34 username: f.username.value,
35 nickname: f.nickname.value,
36 realname: f.realname.value,
37 gender: f.gender.value,
38 gender_public: (f.gender_public.checked ? "1" : "0"),
39 email: f.email.value,
40 year: f.year.value,
41 month: f.month.value,
42 day: f.day.value,
43 qq: f.qq.value,
44 agreement: (f.agreement.checked ? "1" : "0"),
45 vn_str: f.vn_str.value,
46 })
47 .then(function (response) {
48 var ret = response.data;
49 switch (ret.return.code)
50 {
51 case 0: // OK
52 window.alert("注册成功,请查收邮件");
53 document.location = "index.php";
54 break;
55 case -1: // Input validation failed
56 ret.return.errorFields.forEach(field => {
57 document.getElementById("err_msg_" + field.id).innerHTML = field.errMsg + "<br />";
58 });
59 break;
60 case -2: // Internal error
61 console.log(ret.return.message);
62 document.getElementById("err_msg_username").innerHTML = "内部错误<br />";
63 break;
64 default:
65 console.log(ret.return.code);
66 break;
67 }
68 })
69 .catch(function (error) {
70 console.log(error);
71 });
72
73 return false;
74 }
75
76 const instance = axios.create({
77 withCredentials: true,
78 timeout: 3000,
79 baseURL: document.location.protocol + '//' + document.location.hostname + (document.location.port=='' ? '' : (':' + document.location.port)) + '/bbs/',
80 });
81
82 </script>
83 <body>
84 <center>
85 <form method="post" id="regform" name="regform" action="javascript: regsub(regform);">
86 <p style="font-weight: bold; font-size: 16px; color: red; font-family: 楷体">新用户注册</p>
87 <table border="1" cellpadding="10" cellspacing="0" width="700" bgcolor="#ffdead">
88 <tr>
89 <td width="26%" align="right">
90 用户名
91 </td>
92 <td width="74%">
93 <span id="err_msg_username" name="err_msg" style="color: red;"></span><input id="username" name="username" value="">
94 <font color="red">*</font>
95 5-12位英文子母、数字的组合,必须以字母开头,不可更改
96 </td>
97 </tr>
98 <tr>
99 <td align="right">
100 昵称
101 </td>
102 <td>
103 <span id="err_msg_nickname" name="err_msg" style="color: red;"></span><input id="nickname" name="nickname" value="">
104 <span style="color: red">*</span>
105 长度不超过10个全角字符,不能包含空格
106 </td>
107 </tr>
108 <tr>
109 <td align="right">
110 姓名
111 </td>
112 <td>
113 <span id="err_msg_realname" name="err_msg" style="color: red;"></span><input id="realname" name="realname" value="">
114 <span style="color: red">*</span>
115 长度不超过5个全角字符
116 </td>
117 </tr>
118 <tr>
119 <td align="right">
120 性别
121 </td>
122 <td>
123 <span id="err_msg_gender" name="err_msg" style="color: red;"></span><input type="radio" id="gender_male" name="gender" value="M">男
124 <input type="radio" id="gender_female" name="gender" value="F">女
125 <span style="color: red">*</span>
126 <input type="checkbox" id="gender_public" name="gender_public" value="1" checked>公开
127 </td>
128 </tr>
129 <tr>
130 <td align="right">
131 邮件地址
132 </td>
133 <td>
134 <span id="err_msg_email" name="err_msg" style="color: red;"></span><input id="email" name="email" value="">
135 <span style="color: red">*</span>
136 请务必准确填写,否则无法激活账户<br>
137 </td>
138 </tr>
139 <tr>
140 <td align="right">
141 出生日期
142 </td>
143 <td>
144 <span id="err_msg_birthday" name="err_msg" style="color: red;"></span><select id="year" name="year" size="1">
145 <?
146 $year_current = intval(date("Y", time()));
147 $year_max = $year_current - 16; // Accept registrant of 16+ only
148 $year_min = $year_current - 80;
149 $year_selected = $year_current - 25;
150 for ($year = $year_min; $year <= $year_max; $year++)
151 {
152 ?>
153 <option value="<? echo $year; ?>" <? echo ($year == $year_selected ? "selected" : ""); ?>><? echo $year; ?></option>
154 <?
155 }
156 ?>
157
158 </select>年
159 <select id="month" name="month" size="1">
160 <?
161 $month_selected = 1;
162 for ($month = 1; $month <= 12; $month++)
163 {
164 ?>
165 <option value="<? echo $month; ?>" <? echo ($month == $month_selected ? "selected" : ""); ?>><? echo $month; ?></option>
166 <?
167 }
168 ?>
169 </select>月
170 <select id="day" name="day" size="1">
171 <?
172 $day_selected = 1;
173 for ($day = 1; $day <= 31; $day++)
174 {
175 ?>
176 <option value="<? echo $day; ?>" <? echo ($day == $day_selected ? "selected" : ""); ?>><? echo $day; ?></option>
177 <?
178 }
179 ?>
180 </select>日
181 <span style="color: red">*</span>
182 </td>
183 </tr>
184 <tr>
185 <td align="right">
186 QQ号码
187 </td>
188 <td>
189 <span id="err_msg_qq" name="err_msg" style="color: red;"></span><input id="qq" name="qq" size="20" value="">
190 </td>
191 </tr>
192 <tr>
193 <td colspan="2" align="center">
194 <span id="err_msg_agreement" name="err_msg" style="color: red;"></span><textarea rows="15" cols="80"><?
195 $buffer = file_get_contents("./doc/license/" . (new DateTime($BBS_license_dt))->format("Ymd") . ".txt");
196 echo (LML(htmlspecialchars($buffer, ENT_HTML401, 'UTF-8'), false, false, 1024));
197 ?></textarea>
198 <p>
199 <input type="checkbox" id="agreement" name="agreement" value="1">
200 我已仔细阅读并完全同意以上《用户许可协议》
201 </p>
202 </td>
203 </tr>
204 <tr>
205 <td align="right">
206 验证码
207 </td>
208 <td>
209 <span id="err_msg_vn_str" name="err_msg" style="color: red;"></span><input size=4 name="vn_str" value="">
210 <img id="vn_img" src="reg_vn_display.php" onclick="vn_refresh(this);">
211 <span style="color: red">*</span>
212 按图片内容填写,单击图片刷新
213 </td>
214 </tr>
215 </table>
216 <p>
217 <input type="submit" value="提交">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" value="重填">
218 </p>
219 </form>
220 </center>
221 <?
222 include "./foot.inc.php";
223 ?>
224 </body>
225 </html>

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1