reguser2.jsp
上传用户:xjrzjk
上传日期:2022-07-31
资源大小:1585k
文件大小:16k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html; charset=GBK"%>
  2. <%@ page import="java.sql.*"%>
  3. <%
  4. try{
  5.   //得到用户注册账号
  6.   String strUID = request.getParameter("uid");
  7.   //连接数据库
  8.   Class.forName("oracle.jdbc.driver.OracleDriver");
  9.   String strUrl = "jdbc:oracle:thin:@slight:1521:LOCAL";
  10.   String strUser = "eshop";
  11.   String strPassword = "eshop";
  12.   Connection con = DriverManager.getConnection(strUrl, strUser, strPassword);
  13.   Statement st = con.createStatement();
  14.   String strSql = "select * from RegUser where UserID='" + strUID + "'";
  15.   ResultSet rs = st.executeQuery(strSql);
  16.   //判断数据库中是否已有此用户
  17.   if (rs.next()){
  18.     rs.close();
  19.     response.sendRedirect("loginsb.jsp");
  20.     return;
  21.   }
  22. %>
  23. <html>
  24. <head>
  25. <SCRIPT language=javascript id=clientEventHandlersJS>
  26. //函数名:chksafe
  27. //功能介绍:检查是否含有"'",'\',"/"
  28. //参数说明:要检查的字符串
  29. //返回值:0:是  1:不是
  30. function chksafe(a)
  31. {
  32. return 1;
  33. /* fibdn = new Array ("'" ,"\", "u3001", ",", ";", "/");
  34. i=fibdn.length;
  35. j=a.length;
  36. for (ii=0;ii<i;ii++)
  37. { for (jj=0;jj<j;jj++)
  38. { temp1=a.charAt(jj);
  39. temp2=fibdn[ii];
  40. if (tem';p1==temp2)
  41. { return 0; }
  42. }
  43. }
  44. return 1;
  45. */
  46. }
  47. //函数名:chkspc
  48. //功能介绍:检查是否含有空格
  49. //参数说明:要检查的字符串
  50. //返回值:0:是  1:不是
  51. function chkspc(a)
  52. {
  53. var i=a.length;
  54. var j = 0;
  55. var k = 0;
  56. while (k<i)
  57. {
  58. if (a.charAt(k) != " ")
  59. j = j+1;
  60. k = k+1;
  61. }
  62. if (j==0)
  63. {
  64. return 0;
  65. }
  66. if (i!=j)
  67. { return 2; }
  68. else
  69. {
  70. return 1;
  71. }
  72. }
  73. //函数名:chkemail
  74. //功能介绍:检查是否为Email Address
  75. //参数说明:要检查的字符串
  76. //返回值:0:不是  1:是
  77. function chkemail(a)
  78. { var i=a.length;
  79. var temp = a.indexOf('@');
  80. var tempd = a.indexOf('.');
  81. if (temp > 1) {
  82. if ((i-temp) > 3){
  83. if ((i-tempd)>0){
  84. return 1;
  85. }
  86. }
  87. }
  88. return 0;
  89. }
  90. //opt1 小数     opt2   负数
  91. //当opt2为1时检查num是否是负数
  92. //当opt1为1时检查num是否是小数
  93. //返回1是正确的,0是错误的
  94. function chknbr(num,opt1,opt2)
  95. {
  96. var i=num.length;
  97. var staus;
  98. //staus用于记录.的个数
  99. status=0;
  100. if ((opt2!=1) && (num.charAt(0)=='-'))
  101. {
  102. //alert("You have enter a invalid number.");
  103. return 0;
  104. }
  105. //当最后一位为.时出错
  106. if (num.charAt(i-1)=='.')
  107. {
  108. //alert("You have enter a invalid number.");
  109. return 0;
  110. }
  111. for (j=0;j<i;j++)
  112. {
  113. if (num.charAt(j)=='.')
  114. {
  115. status++;
  116. }
  117. if (status>1)
  118. {
  119. //alert("You have enter a invalid number.");
  120. return 0;
  121. }
  122. if (num.charAt(j)<'0' || num.charAt(j)>'9' )
  123. {
  124. if (((opt1==0) || (num.charAt(j)!='.')) && (j!=0))
  125. {
  126. //alert("You have enter a invalid number.");
  127. return 0;
  128. }
  129. }
  130. }
  131. return 1;
  132. }
  133. //函数名:chkdate
  134. //功能介绍:检查是否为日期
  135. //参数说明:要检查的字符串
  136. //返回值:0:不是日期  1:是日期
  137. function chkdate(datestr)
  138. {
  139. var lthdatestr
  140. if (datestr != "")
  141. lthdatestr= datestr.length ;
  142. else
  143. lthdatestr=0;
  144. var tmpy="";
  145. var tmpm="";
  146. var tmpd="";
  147. //var datestr;
  148. var status;
  149. status=0;
  150. if ( lthdatestr== 0)
  151. return 0
  152. for (i=0;i<lthdatestr;i++)
  153. { if (datestr.charAt(i)== '-')
  154. {
  155. status++;
  156. }
  157. if (status>2)
  158. {
  159. //alert("Invalid format of date!");
  160. return 0;
  161. }
  162. if ((status==0) && (datestr.charAt(i)!='-'))
  163. {
  164. tmpy=tmpy+datestr.charAt(i)
  165. }
  166. if ((status==1) && (datestr.charAt(i)!='-'))
  167. {
  168. tmpm=tmpm+datestr.charAt(i)
  169. }
  170. if ((status==2) && (datestr.charAt(i)!='-'))
  171. {
  172. tmpd=tmpd+datestr.charAt(i)
  173. }
  174. }
  175. year=new String (tmpy);
  176. month=new String (tmpm);
  177. day=new String (tmpd)
  178. //tempdate= new String (year+month+day);
  179. //alert(tempdate);
  180. if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
  181. {
  182. //alert("Invalid format of date!");
  183. return 0;
  184. }
  185. if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
  186. {
  187. //alert ("Invalid month or day!");
  188. return 0;
  189. }
  190. if (!((year % 4)==0) && (month==2) && (day==29))
  191. {
  192. //alert ("This is not a leap year!");
  193. return 0;
  194. }
  195. if ((month<=7) && ((month % 2)==0) && (day>=31))
  196. {
  197. //alert ("This month is a small month!");
  198. return 0;
  199. }
  200. if ((month>=8) && ((month % 2)==1) && (day>=31))
  201. {
  202. //alert ("This month is a small month!");
  203. return 0;
  204. }
  205. if ((month==2) && (day==30))
  206. {
  207. //alert("The Febryary never has this day!");
  208. return 0;
  209. }
  210. return 1;
  211. }
  212. //函数名:fucPWDchk
  213. //功能介绍:检查是否含有非数字或字母
  214. //参数说明:要检查的字符串
  215. //返回值:0:含有 1:全部为数字或字母
  216. function fucPWDchk(str)
  217. {
  218.   var strSource ="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  219.   var ch;
  220.   var i;
  221.   var temp;
  222.   for (i=0;i<=(str.length-1);i++)
  223.   {
  224.     ch = str.charAt(i);
  225.     temp = strSource.indexOf(ch);
  226.     if (temp==-1)
  227.     {
  228.      return 0;
  229.     }
  230.   }
  231.   if (strSource.indexOf(ch)==-1)
  232.   {
  233.     return 0;
  234.   }
  235.   else
  236.   {
  237.     return 1;
  238.   }
  239. }
  240. function jtrim(str)
  241. {     while (str.charAt(0)==" ")
  242.           {str=str.substr(1);}
  243.      while (str.charAt(str.length-1)==" ")
  244.          {str=str.substr(0,str.length-1);}
  245.      return(str);
  246. }
  247. //函数名:fucCheckNUM
  248. //功能介绍:检查是否为数字
  249. //参数说明:要检查的数字
  250. //返回值:1为是数字,0为不是数字
  251. function fucCheckNUM(NUM)
  252. {
  253. var i,j,strTemp;
  254. strTemp="0123456789";
  255. if ( NUM.length== 0)
  256. return 0
  257. for (i=0;i<NUM.length;i++)
  258. {
  259. j=strTemp.indexOf(NUM.charAt(i));
  260. if (j==-1)
  261. {
  262. //说明有字符不是数字
  263. return 0;
  264. }
  265. }
  266.         //说明是数字
  267. return 1;
  268. }
  269. //函数名:fucCheckTEL
  270. //功能介绍:检查是否为电话号码
  271. //参数说明:要检查的字符串
  272. //返回值:1为是合法,0为不合法
  273. function fucCheckTEL(TEL)
  274. {
  275. var i,j,strTemp;
  276. strTemp="0123456789-()# ";
  277. for (i=0;i<TEL.length;i++)
  278. {
  279. j=strTemp.indexOf(TEL.charAt(i));
  280. if (j==-1)
  281. {
  282. //说明有字符不合法
  283. return 0;
  284. }
  285. }
  286. //说明合法
  287. return 1;
  288. }
  289. //函数名:fucCheckLength
  290. //功能介绍:检查字符串的长度
  291. //参数说明:要检查的字符串
  292. //返回值:长度值
  293. function fucCheckLength(strTemp)
  294. {
  295. var i,sum;
  296. sum=0;
  297. for(i=0;i<strTemp.length;i++)
  298. {
  299. if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)<=255))
  300. sum=sum+1;
  301. else
  302. sum=sum+2;
  303. }
  304. return sum;
  305. }
  306. </SCRIPT>
  307. <SCRIPT language=javascript>
  308. function enb1()
  309. {
  310. if (document.form1.countryid.value!=1)
  311. {
  312. document.form1.provinceid.disabled=true;
  313. document.form1.cityid.disabled=true;
  314. document.form1.haddr.value="";
  315. }
  316. else
  317. {
  318. document.form1.provinceid.disabled=false;
  319. document.form1.cityid.disabled=false;
  320. }
  321. }
  322. function ctychg()
  323. {
  324. document.form1.methodflag.value = "1";
  325. document.form1.action = "mbrregdetail.asp" ;
  326. document.form1.submit();
  327. }
  328. </SCRIPT>
  329. <SCRIPT language=javascript id=clientEventHandlersJS>
  330. <!--
  331. function form1_onsubmit()
  332. {
  333. if (document.form1.methodflag.value == "1")// || document.form1.methodflag.value == "3")
  334. {
  335. document.form1.action = "mbrregdetail.asp"
  336. }
  337. else
  338. { document.form1.action = "reguser3.jsp"
  339. if (chkspc(document.form1.name.value)==0)
  340. { alert("请填写您的姓名。");
  341. document.form1.name.focus();
  342. return false;
  343. }
  344. if ((window.form1.sex[0].checked == 0)  &&  (window.form1.sex[1].checked == 0  ))
  345. { alert("请选择您的性别。");
  346. return false;
  347. }
  348. if ((chksafe(document.form1.name.value)==0)||(fucCheckLength(document.form1.name.value)>20))
  349. { alert("请填写正确的姓名。");
  350. document.form1.name.focus();
  351. return false;
  352. }
  353. if (fucCheckLength(document.form1.pwd.value)<4)
  354. { alert("密码必须大于4位")
  355. document.form1.pwd.focus();
  356. return false;
  357. }
  358. if ((chksafe(document.form1.pwd.value)==0)||(fucCheckLength(document.form1.pwd.value)>18))
  359. { alert("请填写正确密码。")
  360. document.form1.pwd.focus();
  361. return false;
  362. }
  363. if (document.form1.PasswordConfirm.value!=document.form1.pwd.value)
  364. {
  365. alert ("请确认您的密码。");
  366. document.form1.PasswordConfirm.value='';
  367. document.form1.pwd.value='';
  368. document.form1.pwd.focus();
  369. return false;
  370. }
  371. if (chkspc(document.form1.question.value)==0)
  372. { alert("请填写您的密码提问。");
  373. document.form1.question.focus();
  374. return false;
  375. }
  376. if ((chksafe(document.form1.question.value)==0)||(fucCheckLength(document.form1.question.value)>50))
  377. { alert("请填写正确的密码提问。");
  378. document.form1.question.focus();
  379. return false;
  380. }
  381. if (fucCheckLength(document.form1.answer.value)<4)
  382. { alert("提示问题答案必须大于4位")
  383. document.form1.answer.focus();
  384. return false;
  385. }
  386. if (chkspc(document.form1.answer.value)==0)
  387. { alert("请填写密码提示问题答案。");
  388. document.form1.answer.focus();
  389. return false;
  390. }
  391. if ((chksafe(document.form1.answer.value)==0)||(fucCheckLength(document.form1.answer.value)>50))
  392. { alert("请填写正确的密码提示问题答案。");
  393. document.form1.answer.focus();
  394. return false;
  395. }
  396. /*if ((chkspc(document.form1.birthday.value)!=0) && (chkdate(document.form1.birthday.value)==0))
  397. { alert ("请填写合法的日期。");
  398. document.form1.birthday.focus();
  399. return false;
  400. }
  401. if (chksafe(document.form1.birthday.value)==0)
  402. { alert ("请填写合法的日期。");
  403. document.form1.birthday.focus();
  404. return false;
  405. }*/
  406. if ((chkspc(document.form1.email.value)==0) || (chkemail(document.form1.email.value)==0))
  407. { alert ("请填写正确的e-mail地址。");
  408. document.form1.email.focus();
  409. return false;
  410. }
  411. if ((chksafe(document.form1.email.value)==0)||(fucCheckLength(document.form1.email.value)>40))
  412. { alert ("请填写正确的e-mail地址。");
  413. document.form1.email.focus();
  414. return false;
  415. }
  416. /* if (chkspc(document.form1.certifierno.value)==0)
  417. { alert ("请填写您的证件号码。");
  418. document.form1.certifierno.focus();
  419. return false;
  420. }
  421. if ((chksafe(document.form1.certifierno.value)==0)||(fucCheckLength(document.form1.certifierno.value)>30))
  422. { alert ("请填写正确的证件号码。");
  423. document.form1.certifierno.focus();
  424. return false;
  425. }
  426. */
  427. if (chkspc(document.form1.haddr.value)==0)
  428. { alert ("请填写您的收货地址。");
  429. document.form1.haddr.focus();
  430. return false;
  431. }
  432. if ((chksafe(document.form1.haddr.value)==0)||(fucCheckLength(document.form1.haddr.value)>200))
  433. { alert ("请填写正确的收货地址。");
  434. document.form1.haddr.focus();
  435. return false;
  436. }
  437. if (chkspc(document.form1.postcode.value)==0)
  438. { alert ("请您填写邮政编码。");
  439. document.form1.postcode.focus();
  440. return false;
  441. }
  442. if ((chksafe(document.form1.postcode.value)==0)||(fucCheckLength(document.form1.postcode.value)>15))
  443. { alert ("请填写正确的邮政编码。");
  444. document.form1.postcode.focus();
  445. return false;
  446. }
  447. if ((document.form1.usephone.value=='') || (chkspc(document.form1.usephone.value)==0) || (fucCheckLength(document.form1.usephone.value)>30)||(fucCheckTEL(document.form1.usephone.value)==0))
  448. {
  449. alert("您的常用电话号码填写有误。");
  450. document.form1.usephone.focus();
  451. return false;
  452. }
  453. for (lgth=0;lgth<=document.form1.pwd.value.length;lgth++)
  454. { if ( (document.form1.pwd.value.charCodeAt(lgth)>128)  || (document.form1.pwd.value.charAt(lgth)=="'") )
  455. { alert("请不要输入中文密码或者单引号!");
  456. document.form1.pwd.focus();
  457. return false;
  458. }
  459. }
  460. }
  461. }
  462. function cityChange(p)
  463. {
  464. /*document.form1.methodflag.value = "3";
  465. document.form1.action = "mbrregdetail.asp" ;
  466. document.form1.submit();*/
  467. //alert(getCityName(p));
  468. document.form1.haddr.value=document.form1.prvname.value+getCityName(p);
  469. //alert(CityArray[0].name);
  470. //alert(p);
  471. // ctychg();
  472. }
  473. function magazine51go_onclick() {
  474. if  (form1.magazine51go.checked == true ) tr_51go.style.display="";
  475. else tr_51go.style.display="none";
  476. }
  477. //-->
  478. </SCRIPT>
  479. <title>注册信息</title>
  480. <link rel="stylesheet" type="text/css" href="style.css">
  481. </HEAD>
  482. <BODY bgColor=#ffffff>
  483. <DIV align=center>
  484. <TABLE cellSpacing=0 cellPadding=0 width=750>
  485.   <TBODY>
  486.   <TR>
  487.     <TD height=62>
  488.       <DIV align=center><BR>
  489.         <h2><%=strUID%>,您好!</h2>
  490.       <FORM language=javascript name=form1 onsubmit="return form1_onsubmit()" method=post>
  491.  <INPUT type=hidden value=<%=strUID%> name=uid>
  492.  <INPUT type=hidden value=2 name=methodflag>
  493.         <table border="0" width="100%" cellspacing="0" cellpadding="0">
  494.           <tr>
  495.             <td width="100%">
  496.               <p style="line-height: 150%">&nbsp;&nbsp;
  497.               为了我们更好的为您服务,更准确及时的将您订购的商品送到您的手中和与您联系,请您务必详细填写您的信息,并核对无误;
  498.             国内用户请留下您的真实中文姓名。 请放心:您的资料未经您的允许,我们将只用于处理您的订货信息,对外保密。
  499.             (带*号为必填项)</p>
  500.               <p> </td>
  501.           </tr>
  502.         </table>
  503.       <TABLE class=main cellSpacing=1 width=746 bgColor=#006699>
  504.         <TBODY>
  505.         <TR>
  506.           <TD  bgColor=#006699 colSpan=2 width="736"><FONT
  507.             color=#ffffff><B>注册信息:</B></FONT></TD></TR>
  508.         <TR>
  509.           <TD width=130 bgColor=#ffffff>您的会员帐号: </TD>
  510.           <TD bgColor=#ffffff width="598"><%=strUID%><BR>[这是您刚才选好的名字,若需要重新选取,可以点击“<A
  511.             href="reguser.htm">上一步</A>”。] </TD></TR>
  512.         <TR>
  513.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>您的姓名:</TD>
  514.           <TD bgColor=#ffffff width="598"><INPUT maxLength=10 size=10 name=name>
  515.             <BR>[请留下您的真实姓名,便于我们与您的联系以及给您发货。] </TD></TR>
  516.         <TR>
  517.           <TD width=130 bgColor=#ffffff><FONT color=#000000><FONT
  518.             color=#e71c17>*</FONT>性别:</FONT></TD>
  519.           <TD bgColor=#ffffff width="598"><FONT color=#000000><INPUT id=sex
  520.             type=radio CHECKED value=男 name=sex> 男 <INPUT id=sex type=radio
  521.             value=女 name=sex> 女</FONT> </TD></TR>
  522.         <TR>
  523.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>密码:</TD>
  524.           <TD bgColor=#ffffff width="598">
  525.             <P><FONT color=#000000><INPUT type=password maxLength=18 name=pwd>
  526.             </FONT><BR>[长度太小的密码很不安全,而长度太大的密码又不方便记忆,所以请您将密码的长度限制在4-16个字符之间。密码的组成元素只能是英文字母、数字、符号,例如:small2000、199707!等。]
  527.             </P></TD></TR>
  528.         <TR>
  529.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>密码确认:</TD>
  530.           <TD bgColor=#ffffff width="598"><FONT color=#000000><INPUT
  531.             type=password maxLength=18 name=PasswordConfirm>
  532.             <BR>[请您在“确认密码”方框中输入与“密码”相同的信息,这是为了防止设置密码时输入错误。] </FONT></TD></TR>
  533.         <TR>
  534.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>密码提问:</TD>
  535.           <TD bgColor=#ffffff width="598"><FONT color=#000000><INPUT
  536.             maxLength=50 size=40 name=question>
  537.             </FONT><BR>[如果您忘记密码,系统会提出此问题。选择一个容易勾起您的回忆的问题吧!] </TD></TR>
  538.         <TR>
  539.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>密码答案:</TD>
  540.           <TD bgColor=#ffffff width="598"><INPUT maxLength=50 size=40
  541.             name=answer> (密码遗忘时将验证此答案)
  542.             <BR>[此答案与前面的问题对应,当您忘记密码时,系统会根据您在这里设定的提示问题和答案帮助您重新设置密码。] </TD></TR>
  543.         <TR>
  544.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>E-MAIL:</TD>
  545.           <TD bgColor=#ffffff width="598"><INPUT maxLength=40 name=email>
  546.             <BR>[请您填上正确的电子邮件地址,这样我们才方便与您联系。<FONT
  547.             color=#ff0000>如果您有两个以上的邮箱,请只填写您最常用的一个邮箱地址。</FONT>] </TD></TR>
  548.         <TR>
  549.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>常用电话:</TD>
  550.           <TD bgColor=#ffffff width="598"><INPUT id=text5 maxLength=30
  551.             name=usephone> <BR>[请填写能随时联系到您的电话,以便你在购物时我们能随时与您取得联系。] </TD></TR>
  552.         <TR>
  553.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>收货地址:</TD>
  554.           <TD bgColor=#ffffff width="598"><INPUT maxLength=200 size=60 name=haddr> <BR>[请填写您能最直接收到购物的地址,以便我们能尽快将您购的物递交给您。]
  555.         </TD></TR>
  556.         <TR>
  557.           <TD width=130 bgColor=#ffffff><FONT color=#e71c17>*</FONT>邮编:</TD>
  558.           <TD bgColor=#ffffff width="598"><INPUT maxLength=15 name=postcode>
  559.         </TD></TR>
  560.         <TR>
  561.           <TD bgColor=#ffffff colSpan=2 width="736"></TD></TR>
  562.         <TR id=tr_51go style="DISPLAY: none" bgColor=#ffffff>
  563.           <TD  width=736 colSpan=2> </TD></TR></TBODY></TABLE><INPUT  type=submit value=确认 name=button1><INPUT  id=button2 type=reset value=重填 name=reset>
  564.       <BR></FORM></DIV></TD></TR></TBODY></TABLE>
  565. </DIV></BODY>
  566. </html>
  567. <%
  568.   }catch(Exception exp){
  569.   exp.printStackTrace();
  570.   }
  571. %>