Bez popisu
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

install.html 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>安装YznCMS后台程序</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  9. <link rel="stylesheet" href="__STATIC__/libs/layui/css/layui.css" media="all">
  10. <style type="text/css">
  11. body {
  12. text-align: center;
  13. background-repeat: no-repeat;
  14. background-color: #f1f4fd;
  15. background-size: cover;
  16. background-image: url(__STATIC__/admin/img/background01.svg);
  17. margin: 0;
  18. padding: 0;
  19. line-height: 1.5;
  20. -webkit-font-smoothing: antialiased;
  21. -moz-osx-font-smoothing: grayscale;
  22. }
  23. body, input, button {
  24. font-family: 'Source Sans Pro', 'Helvetica Neue', Helvetica, 'Microsoft Yahei', Arial, sans-serif;
  25. font-size: 14px;
  26. color: #7E96B3;
  27. }
  28. h2 {
  29. margin-top: 20px;
  30. font-size: 28px;
  31. font-weight: normal;
  32. color: #3C5675;
  33. margin-bottom: 0
  34. }
  35. .content {
  36. margin-top: 20px;
  37. }
  38. .content p {
  39. margin: 20px;
  40. }
  41. .content form {
  42. margin: 0 auto;
  43. width: 500px;
  44. margin-bottom: 20px;
  45. }
  46. .content form .bg {
  47. margin-top: 20px;
  48. background-color: #fff;
  49. border: 1px solid #fff;
  50. border-radius: 3px;
  51. padding: 14px 14px;
  52. box-shadow: 0 0 8px #cccccc;
  53. }
  54. .content form .layui-form-item:last-child {
  55. margin-bottom: 0 !important;
  56. }
  57. .content form .layui-btn {
  58. margin-top: 20px;
  59. }
  60. .content .layui-elem-field legend {
  61. font-size: 16px;
  62. color: #8a8a8a;
  63. }
  64. .content .tips {
  65. float: left;
  66. margin-top: 5px;
  67. margin-bottom: 5px;
  68. font-size: 12px;
  69. color: #eca6a6
  70. }
  71. .content .admin-tips {
  72. float: left;
  73. margin-top: 5px;
  74. margin-bottom: 5px;
  75. font-size: 12px;
  76. color: #eca6a6
  77. }
  78. .content .desc {
  79. font-size: 16px;
  80. color: #4E5465;
  81. margin-bottom: 30px;
  82. }
  83. .content .desc a {
  84. color: #07adeb;
  85. margin-right: 10px;
  86. }
  87. .content .desc a:first-child {
  88. margin-left: 10px;
  89. }
  90. #error, .error, #success, .success, #warmtips, .warmtips{
  91. color: #fff;
  92. padding: 15px 20px;
  93. border-radius: 4px;
  94. margin-bottom: 20px;
  95. }
  96. #error a, .error a {
  97. color: white;
  98. text-decoration: underline;
  99. }
  100. #warmtips {
  101. background: #ffcdcd;
  102. font-size: 14px;
  103. color: #e74c3c;
  104. }
  105. #warmtips a {
  106. background: #ffffff7a;
  107. display: block;
  108. height: 30px;
  109. line-height: 30px;
  110. margin-top: 10px;
  111. color: #e21a1a;
  112. border-radius: 3px;
  113. }
  114. @media screen and (max-width:768px) {
  115. .content form {
  116. width: 95%;
  117. }
  118. }
  119. </style>
  120. </head>
  121. <body>
  122. <h2>安装YznCMS后台系统</h2>
  123. <div class="content">
  124. <p class="desc">
  125. 使用过程中遇到任何问题可参考
  126. <a href="https://www.kancloud.cn/ken678/yzncms" target="_blank">文档教程</a>
  127. <a href="https://www.bilibili.com/video/av417106995" target="_blank">视频教程</a>
  128. </p>
  129. <form class="layui-form layui-form-pane" action="">
  130. {if $errInfo}
  131. <div class="error layui-bg-red">
  132. {$errInfo}
  133. </div>
  134. {/if}
  135. <div id="error" class="layui-bg-red" style="display:none"></div>
  136. <div id="success" class="layui-bg-cyan" style="display:none"></div>
  137. <div id="warmtips" style="display:none"></div>
  138. <div class="bg">
  139. <div class="layui-form-item">
  140. <label class="layui-form-label">数据库地址</label>
  141. <div class="layui-input-block">
  142. <input class="layui-input" type="text" name="mysqlHostname" value="127.0.0.1" autocomplete="off" lay-verify="required" placeholder="请输入数据库地址">
  143. </div>
  144. </div>
  145. <div class="layui-form-item">
  146. <label class="layui-form-label">数据库名称</label>
  147. <div class="layui-input-block">
  148. <input class="layui-input" type="text" name="mysqlDatabase" value="" autocomplete="off" lay-verify="required" placeholder="请输入数据库名称">
  149. </div>
  150. </div>
  151. <div class="layui-form-item">
  152. <label class="layui-form-label">数据表前缀</label>
  153. <div class="layui-input-block">
  154. <input class="layui-input" type="text" name="mysqlPrefix" autocomplete="off" lay-verify="required" value="yzn_" placeholder="请输入数据表前缀">
  155. </div>
  156. </div>
  157. <div class="layui-form-item">
  158. <label class="layui-form-label">数据库账号</label>
  159. <div class="layui-input-block">
  160. <input class="layui-input" type="text" name="mysqlUsername" autocomplete="off" lay-verify="required" value="root" placeholder="请输入数据库账号">
  161. </div>
  162. </div>
  163. <div class="layui-form-item">
  164. <label class="layui-form-label">数据库密码</label>
  165. <div class="layui-input-block">
  166. <input class="layui-input" type="password" autocomplete="off" lay-verify="required" name="mysqlPassword" placeholder="请输入数据库密码">
  167. </div>
  168. </div>
  169. <div class="layui-form-item">
  170. <label class="layui-form-label">数据库端口</label>
  171. <div class="layui-input-block">
  172. <input class="layui-input" type="number" name="mysqlHostport" value="3306" autocomplete="off" lay-verify="required" placeholder="请输入数据库端口">
  173. </div>
  174. </div>
  175. </div>
  176. <div class="bg">
  177. <div class="layui-form-item">
  178. <label class="layui-form-label">管理员账号</label>
  179. <div class="layui-input-block">
  180. <input class="layui-input" name="adminUsername" autocomplete="off" lay-verify="required" value="admin" placeholder="请输入管理员账号"/>
  181. </div>
  182. </div>
  183. <div class="layui-form-item">
  184. <label class="layui-form-label">管理员邮箱</label>
  185. <div class="layui-input-block">
  186. <input class="layui-input" name="adminEmail" autocomplete="off" lay-verify="required" value="admin@admin.com" placeholder="请输入管理员邮箱"/>
  187. </div>
  188. </div>
  189. <div class="layui-form-item">
  190. <label class="layui-form-label">管理员密码</label>
  191. <div class="layui-input-block">
  192. <input class="layui-input" type="password" autocomplete="off" lay-verify="required" name="adminPassword" placeholder="请输入管理员密码">
  193. </div>
  194. </div>
  195. <div class="layui-form-item">
  196. <label class="layui-form-label">密码确认</label>
  197. <div class="layui-input-block">
  198. <input class="layui-input" type="password" autocomplete="off" lay-verify="required" name="adminPasswordConfirmation" placeholder="请输入密码确认">
  199. </div>
  200. </div>
  201. </div>
  202. <div class="layui-form-item form-buttons">
  203. <button class="layui-btn layui-btn-normal {:$errInfo?'layui-btn-disabled':''}" {:$errInfo?'disabled':''} lay-submit lay-filter="install">确定安装</button>
  204. </div>
  205. </form>
  206. </div>
  207. <script src="__STATIC__/libs/layui/layui.js" charset="utf-8"></script>
  208. <script>
  209. layui.use(['form', 'layer'], function() {
  210. var $ = layui.jquery,
  211. form = layui.form,
  212. layer = layui.layer;
  213. $(function () {
  214. $('form :input:first').select();
  215. })
  216. form.on('submit(install)', function(data) {
  217. if ($(this).hasClass('layui-btn-disabled')) {
  218. return false;
  219. }
  220. var $error = $("#error");
  221. var $success = $("#success");
  222. var $button = $('.layui-btn')
  223. .text("安装中...")
  224. .prop('disabled', true);
  225. var _data = data.field;
  226. $.ajax({
  227. url: "",
  228. type: "POST",
  229. dataType: "json",
  230. data: _data,
  231. success: function (ret) {
  232. if (ret.code == 1) {
  233. var data = ret.data;
  234. $error.hide();
  235. $("form .bg").remove();
  236. $button.remove();
  237. $success.text(ret.msg).show();
  238. $buttons = $("form .form-buttons");
  239. $("<a class='layui-btn layui-btn-normal' href='./'>访问首页</a>").appendTo($buttons);
  240. $("#warmtips").html("温馨提示:为了安全,请删除/public/install.php文件").show();
  241. var url = location.href.replace(/install\.php/, 'admin');
  242. $('<a class="layui-btn" href="' + url + '" id="btn-admin" style="background:#4e73df">' + "进入后台" + '</a>').appendTo($buttons);
  243. localStorage.setItem("fastep", "installed");
  244. } else {
  245. $error.show().text(ret.msg);
  246. $button.prop('disabled', false).text("点击安装");
  247. $("html,body").animate({
  248. scrollTop: 0
  249. }, 500);
  250. }
  251. },
  252. error: function (xhr) {
  253. $error.show().text(xhr.responseText);
  254. $button.prop('disabled', false).text("点击安装");
  255. $("html,body").animate({
  256. scrollTop: 0
  257. }, 500);
  258. }
  259. });
  260. return false;
  261. });
  262. });
  263. </script>
  264. </body>
  265. </html>