step3.html 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <include file="Public:head" />
  5. </head>
  6. <body>
  7. <div class="wrap">
  8. <include file="Public:header" />
  9. <section class="section">
  10. <div class="step">
  11. <ul class="unstyled">
  12. <li class="on"><em>1</em>检测环境</li>
  13. <li class="current"><em>2</em>创建数据</li>
  14. <li><em>3</em>完成安装</li>
  15. </ul>
  16. </div>
  17. <form id="js-install-form" action="__ROOT__/index.php?g=install&a=step4" method="post">
  18. <input type="hidden" name="force" value="0" />
  19. <div class="server">
  20. <table width="100%">
  21. <tr>
  22. <td class="td1" width="100">数据库信息</td>
  23. <td class="td1" width="200">&nbsp;</td>
  24. <td class="td1">&nbsp;</td>
  25. </tr>
  26. <tr>
  27. <td class="text-left">数据库服务器:</td>
  28. <td><input type="text" name="dbhost" id="dbhost" value="localhost" class="input"></td>
  29. <td>
  30. <div id="js-install-tip-dbhost">
  31. <span class="gray">数据库服务器地址,一般为localhost</span>
  32. </div>
  33. </td>
  34. </tr>
  35. <tr>
  36. <td class="text-left">数据库端口:</td>
  37. <td><input type="text" name="dbport" id="dbport" value="3306" class="input"></td>
  38. <td>
  39. <div id="js-install-tip-dbport">
  40. <span class="gray">数据库服务器端口,一般为3306</span>
  41. </div>
  42. </td>
  43. </tr>
  44. <tr>
  45. <td class="text-left">数据库用户名:</td>
  46. <td><input type="text" name="dbuser" id="dbuser" value="root" class="input"></td>
  47. <td><div id="js-install-tip-dbuser"></div></td>
  48. </tr>
  49. <tr>
  50. <td class="text-left">数据库密码:</td>
  51. <td><input type="password" name="dbpw" id="dbpw" value="" class="input" autoComplete="off" onblur="TestDbPwd()"></td>
  52. <td><div id="js-install-tip-dbpw"></div></td>
  53. </tr>
  54. <tr>
  55. <td class="text-left">数据库名:</td>
  56. <td><input type="text" name="dbname" id="dbname" value="cyymall" class="input"></td>
  57. <td><div id="js-install-tip-dbname"></div></td>
  58. </tr>
  59. </table>
  60. <div id="js-response-tips" style="display: none;"></div>
  61. </div>
  62. <div class="bottom text-center">
  63. <a href="__ROOT__/index.php?g=install&a=step2" class="btn btn-primary">上一步</a>
  64. <button type="submit" class="btn btn-primary">创建数据</button>
  65. </div>
  66. </form>
  67. </section>
  68. <script src="__PUBLIC__/js/jquery.js"></script>
  69. <script src="__PUBLIC__/js/validate.js"></script>
  70. <script src="__PUBLIC__/js/ajaxForm.js"></script>
  71. <script>
  72. function TestDbPwd() {
  73. var dbHost = $('#dbhost').val();
  74. var dbUser = $('#dbuser').val();
  75. var dbPwd = $('#dbpw').val();
  76. var dbName = $('#dbname').val();
  77. var dbPort = $('#dbport').val();
  78. data = {
  79. 'DB_HOST' : dbHost,
  80. 'DB_USER' : dbUser,
  81. 'DB_PWD' : dbPwd,
  82. 'DB_PORT' : dbPort
  83. };
  84. var url = "__ROOT__/index.php?g=install&a=testdbpwd";
  85. $.ajax({
  86. type : "POST",
  87. url : url,
  88. data : data,
  89. beforeSend : function() {
  90. },
  91. success : function(msg) {
  92. if (msg) {
  93. } else {
  94. $('#dbpw').val("");
  95. $('#js-install-tip-dbpw').html('<span for="dbname" generated="true" class="tips-error" style="">数据库链接配置失败</span>');
  96. }
  97. },
  98. complete : function() {
  99. },
  100. error : function() {
  101. $('#js-install-tip-dbpw').html('<span for="dbname" generated="true" class="tips-error" style="">数据库链接配置失败</span>');
  102. $('#dbpw').val("");
  103. }
  104. });
  105. }
  106. $(function() {
  107. //聚焦时默认提示
  108. var focus_tips = {
  109. dbhost : '数据库服务器地址,一般为localhost',
  110. dbport : '数据库服务器端口,一般为3306',
  111. dbuser : '',
  112. dbpw : '',
  113. dbname : '',
  114. dbprefix : '建议使用默认,同一数据库安装多个ThinkCMF时需修改',
  115. manager : '创始人帐号,拥有站点后台所有管理权限',
  116. manager_pwd : '',
  117. manager_ckpwd : '',
  118. sitename : '',
  119. siteurl : '请以“/”结尾',
  120. sitekeywords : '',
  121. siteinfo : '',
  122. manager_email : ''
  123. };
  124. var install_form = $("#js-install-form");
  125. //validate插件修改了remote ajax验证返回的response处理方式;增加密码强度提示 passwordRank
  126. install_form.validate({
  127. //debug : true,
  128. //onsubmit : false,
  129. errorPlacement : function(error, element) {
  130. //错误提示容器
  131. $('#js-install-tip-' + element[0].name).html(error);
  132. },
  133. errorElement : 'span',
  134. //invalidHandler : , 未验证通过 回调
  135. //ignore : '.ignore' 忽略验证
  136. //onkeyup : true,
  137. errorClass : 'tips-error',
  138. validClass : 'tips-error',
  139. onkeyup : false,
  140. focusInvalid : false,
  141. rules : {
  142. dbhost : {required : true},
  143. dbport : {required : true},
  144. dbuser : {required : true},
  145. /* dbpw: {required : true}, */
  146. dbname : {required : true},
  147. dbprefix : {required : true},
  148. manager : {required : true},
  149. manager_pwd : {required : true},
  150. manager_ckpwd : {required : true,equalTo : '#js-manager-pwd'},
  151. manager_email : {required : true,email : true}
  152. },
  153. highlight : false,
  154. unhighlight : function(element, errorClass,validClass) {
  155. var tip_elem = $('#js-install-tip-'+ element.name);
  156. tip_elem.html('<span class="'+ validClass +'" data-text="text"><span>');
  157. },
  158. onfocusin : function(element) {
  159. var name = element.name;
  160. $('#js-install-tip-' + name).html('<span data-text="text">'+ focus_tips[name] + '</span>');
  161. $(element).parents('tr').addClass('current');
  162. },
  163. onfocusout : function(element) {
  164. var _this = this;
  165. $(element).parents('tr').removeClass('current');
  166. if (element.name === 'email') {
  167. //邮箱匹配点击后,延时处理
  168. setTimeout(function() {
  169. _this.element(element);
  170. }, 150);
  171. } else {
  172. _this.element(element);
  173. }
  174. },
  175. messages : {
  176. dbhost : {required : '数据库服务器地址不能为空'},
  177. dbport : {required : '数据库服务器端口不能为空'},
  178. dbuser : {required : '数据库用户名不能为空'},
  179. dbpw : {required : '数据库密码不能为空'},
  180. dbname : {required : '数据库名不能为空'},
  181. dbprefix : {required : '数据库表前缀不能为空'},
  182. manager : {required : '管理员帐号不能为空'},
  183. manager_pwd : {required : '密码不能为空'},
  184. manager_ckpwd : {required : '重复密码不能为空',equalTo : '两次输入的密码不一致,请重新输入.'},
  185. manager_email : {required : 'Email不能为空',email : '请输入正确的电子邮箱地址'}
  186. },
  187. submitHandler : function(form) {
  188. form.submit();
  189. return true;
  190. }
  191. });
  192. });
  193. </script>
  194. </div>
  195. <include file="Public:footer" />
  196. </body>
  197. </html>