PageRenderTime 44ms CodeModel.GetById 12ms RepoModel.GetById 0ms app.codeStats 0ms

/ourproject --username keivenlove@gmail.com/install/index.php

http://ourproject.googlecode.com/
PHP | 363 lines | 318 code | 36 blank | 9 comment | 19 complexity | ada284ef84449968e1c0a2ccb1ddc422 MD5 | raw file
  1. <?php
  2. header("Content-Type: text/html; charset=gb2312");
  3. ob_start();
  4. error_reporting(0);
  5. $i_model = 1;
  6. define('S_ROOT', dirname(__FILE__).DIRECTORY_SEPARATOR);
  7. require_once 'install_function.php';
  8. require_once 'install_var.php';
  9. require_once 'install_lang.php';
  10. require_once 'install_mysql.php';
  11. if (@ include ("../data/phpyun.lock")) {
  12. show_view('??????PHPyun????????phpyun_lock??????');
  13. exit ();
  14. }
  15. if (empty ($_GET['step']))
  16. $_GET['step'] = 'start';
  17. if ($_GET['step'] == 'start') {
  18. //????
  19. show_view('?????<br><br>
  20. <p>
  21. ????????????PHPYUN.1.3 BETA ??????????????????????????????
  22. </p>
  23. <p>
  24. &nbsp;
  25. </p>
  26. <p>
  27. I. ???????
  28. </p>
  29. <p>
  30. 1. ??????????????????????????????????(?????????????????????????????????????????????????????????????PHPYUN ???????????????????????????????????)
  31. </p>
  32. <p>
  33. 2. ??????????????????? PHPYUN????? ???(???????)???????????????
  34. </p>
  35. <p>
  36. 3. ?????????????????????????????????????????????????????????
  37. </p>
  38. <p>
  39. 4. ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  40. </p>
  41. <p>
  42. &nbsp;
  43. </p>
  44. <p>
  45. II. ??????????
  46. </p>
  47. <p>
  48. 1. ?????????????????????(?????????????????????????????????????)?
  49. </p>
  50. <p>
  51. 2. ??????????????????????????????????
  52. </p>
  53. <p>
  54. 3. ??????????????????????????????????PHPYUN ???? ?????????????????????Powered by PHPYun.???????????????
  55. </p>
  56. <p>
  57. 4. ?????????????????????????????????????????????
  58. </p>
  59. <p>
  60. &nbsp;
  61. </p>
  62. <p>
  63. III. ?????????
  64. </p>
  65. <p>
  66. 1. ?????????????????????????????????????
  67. </p>
  68. <p>
  69. 2. ??????????????????????????????????????????????????????????????????????????????????????
  70. </p>
  71. <p>
  72. 3. ????????????????????????????????????????????????????????????????????????????
  73. </p>
  74. <p>
  75. ?? ?????! ??????????????????????????PHPYUN ????????? ????????????????????????????????????????????????????????????????????????????????????????????????????????????????? PHPYUN1.3 BETA???????????????????????????????????????????????????????????????????????????????????????????????????????????
  76. </p>
  77. <p align="right">
  78. ????????????
  79. </p>
  80. <br><br><center>
  81. <input type="button" name="step_1" value="?????" onclick="location.href=\'index.php?step=checkset\'">
  82. <a href="index.php?step=checkset"></a>
  83. <br><br></center>
  84. ????????????????????????????');
  85. }
  86. elseif ($_GET['step'] == 'checkset') {
  87. function_check($func_items);
  88. env_check($env_items);
  89. dirfile_check($dirfile_items);
  90. echo(show_env_result($env_items, $dirfile_items, $func_items));
  91. }
  92. elseif ($_GET['step'] == 'sql') {
  93. //?????? -------------------------->
  94. if ($_POST[setup_sql]) {
  95. $weburl = $_POST['weburl'];
  96. $dbhost = $_POST['dbhost'];
  97. $dbname = $_POST['dbname'];
  98. $dbuser = $_POST['dbuser'];
  99. $dbpwd = $_POST['dbpwd'];
  100. $username = $_POST[username];
  101. $name = $_POST[name];
  102. $password = md5($_POST[password]);
  103. $password2 = md5($_POST[password2]);
  104. //???????
  105. if (empty ($dbhost) || empty ($dbname) || empty ($dbuser)) {
  106. show_view("???????????????");
  107. } else {
  108. //--------------->>
  109. $conn = @mysql_connect($dbhost,$dbuser,$dbpwd);
  110. if($conn==false){ show_view("??????????????"); exit();}
  111. //--------------->>
  112. if(@mysql_select_db($dbname)==false){
  113. if(mysql_get_server_info() > '4.1') {
  114. mysql_query("CREATE DATABASE `$dbname` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci", $conn);
  115. $dbsql=@mysql_select_db($dbname);
  116. } else {
  117. show_view("?????????,???4.1???");
  118. exit();
  119. }
  120. }
  121. mysql_query("set names 'GBK'");
  122. //???????
  123. $tablepre = $_POST[tablepre];
  124. $fp=file_get_contents("data/phpjob_table.php");
  125. $fp=str_replace("phpjob_",$tablepre,$fp);
  126. preg_match_all("/CREATE(.*);/Uis",$fp,$arrdata);
  127. foreach($arrdata[0] as $v){
  128. $sql=str_replace("\r\n","",$v);
  129. mysql_query($sql)or die(mysql_error());
  130. }
  131. //??????
  132. $fpp=file_get_contents("data/phpjob_data.php");
  133. $fpp=str_replace("phpjob_",$tablepre,$fpp);
  134. preg_match_all("/INSERT(.*)\);/Uis",$fpp,$data);
  135. foreach($data[0] as $v){
  136. $sql=str_replace("\r\n","",$v);
  137. mysql_query($sql) or die(mysql_error());
  138. }
  139. //???????
  140. $table_user=$tablepre."admin_user";
  141. $table_config=$tablepre."admin_config";
  142. mysql_query("insert into $table_user values (null,'1','$username','$password','$name')");
  143. mysql_query("update $table_config set `config`='$weburl' where `name`='sy_weburl'");
  144. $coding=md5($weburl.$name.mktime());
  145. $config=fopen("../config/db.config.php","w+");
  146. if($config){
  147. $db="<?php \r\n";
  148. $db.=" \$db_config = array(\r\n";
  149. $db.=" 'dbtype'=>'mysql',\r\n";
  150. $db.=" 'dbhost'=>'$dbhost',\r\n";
  151. $db.=" 'dbuser'=>'$dbuser',\r\n";
  152. $db.=" 'dbpass'=>'$dbpwd',\r\n";
  153. $db.=" 'dbname'=>'$dbname',\r\n";
  154. $db.=" 'def'=>'$tablepre',\r\n";
  155. $db.=" 'charset'=>'GBK',\r\n";
  156. $db.=" 'timezone'=>'PRC',\r\n";
  157. $db.=" 'coding'=>'$coding', //??cookie??\r\n";
  158. $db.=" 'version'=>'1.3 BETA',//???\r\n";
  159. $db.=" );\r\n";
  160. $db.=" \r\n?>";
  161. }
  162. fwrite($config,$db);
  163. fclose($config);
  164. mysql_close($conn);
  165. if(strpos($tablepre, '.') !== false) {
  166. show_error('tablepre_invalid', $tablepre, 0);
  167. }
  168. $db = new db_tool();
  169. $db->connect($dbhost, $dbuser, $dbpwd, $dbname, DBCHARSET);
  170. show_msg('????????', 'index.php?step=finish');
  171. //--------------------------------------->
  172. } //End ???????
  173. } else {
  174. $url_this = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER["REQUEST_URI"];
  175. $url_this = explode('/install/', $url_this);
  176. $url_this = $url_this[0];
  177. $form_str = "
  178. <form method='post' action='index.php?step=sql' id='frm_sql' name='frm_sql' onsubmit=\"return checkweb()\">
  179. <div id='form_items_cache' >
  180. <div class='desc'><b>???????</b></div>
  181. <table class='tb2'>
  182. <tr>
  183. <td class='padleft'>
  184. ????:
  185. </td>
  186. <td class='padleft'>
  187. <input type='text' name='weburl' maxlength='100' value='$url_this' size='35' class='txt'>
  188. </td>
  189. <td class='pdleft1' id='weburl_msg'>
  190. ???url
  191. </td>
  192. </tr>
  193. <tr>
  194. <td class='padleft'>
  195. ??????:
  196. </td>
  197. <td class='padleft'>
  198. <input type='text' name='dbhost' value='localhost' size='35' class='txt'>
  199. </td>
  200. <td class='pdleft1' id='dbhost_msg'>
  201. ????????, ??? localhost
  202. </td>
  203. </tr>
  204. <tr>
  205. <td class='padleft'>
  206. ??????:
  207. </td>
  208. <td class='padleft'>
  209. <input type='text' name='dbuser' value='root' size='35' class='txt'>
  210. </td>
  211. <td class='pdleft1' id='dbuser_msg'></td>
  212. </tr>
  213. <tr>
  214. <td class='padleft'>
  215. ?????:
  216. </td>
  217. <td class='padleft'>
  218. <input type='password' name='dbpwd' value='' size='35' class='txt'>
  219. </td>
  220. <td class='pdleft1' id='dbpsw_msg'>
  221. </td>
  222. </tr>
  223. <tr>
  224. <td class='padleft'>
  225. ????:
  226. </td>
  227. <td class='padleft'>
  228. <input type='text' name='dbname' value='phpyun' size='35' class='txt'>
  229. </td>
  230. <td class='pdleft1' id='dbname_msg'></td>
  231. </tr>
  232. <tr>
  233. <td class='padleft'>
  234. ?????:
  235. </td>
  236. <td class='padleft'>
  237. <input type='text' name='tablepre' value='phpyun_' size='35' class='txt'>
  238. </td>
  239. <td class='pdleft1'>
  240. ??????????????????
  241. </td>
  242. </tr>
  243. </table>
  244. <div class='desc'><b>???????</b></div>
  245. <table class='tb2'>
  246. <tr>
  247. <td class='padleft'>
  248. ?????:
  249. </td>
  250. <td class='padleft'>
  251. <input type='text' name='username' value='admin' size='35' class='txt'>
  252. </td>
  253. <td class='pdleft1' id='username_msg'>
  254. </td>
  255. </tr>
  256. <tr>
  257. <td class='padleft'>
  258. ?????:
  259. </td>
  260. <td class='padleft'>
  261. <input type='password' name='password' value='admin' size='35' class='txt'>
  262. </td>
  263. <td class='pdleft1' id='password_msg'>
  264. ?????admin
  265. </td>
  266. </tr>
  267. <tr>
  268. <td class='padleft'>
  269. ????:
  270. </td>
  271. <td class='padleft'>
  272. <input type='password' name='password2' value='admin' size='35' class='txt'>
  273. </td>
  274. <td class='pdleft1' id='password2_msg'>
  275. </td>
  276. </tr>
  277. <tr>
  278. <td class='padleft'>
  279. ??? ??:
  280. </td>
  281. <td class='padleft'>
  282. <input type='text' name='name' value='PHPYun??' size='35' class='txt'>
  283. </td>
  284. <td class='pdleft1' id='name_msg'>
  285. </td>
  286. </tr>
  287. <tr>
  288. <td class='padleft'>
  289. &nbsp;
  290. </td>
  291. <td class='padleft'>
  292. <center><input type='submit' name='setup_sql' value='???'></center>
  293. </td>
  294. <td class='pdleft1'>
  295. </td>
  296. </tr>
  297. </table>
  298. </div>
  299. </form>
  300. ";
  301. show_header();
  302. echo ($form_str);
  303. show_footer();
  304. } //End ??????
  305. }
  306. elseif ($_GET['step'] == 'finish') {
  307. fopen("../data/phpyun.lock", "w+");
  308. show_view("?????PHP?????? ??????<br><br>
  309. ?????????? ???<b>????</b> ????????????????????<br><br>
  310. ????????????????<br><br><br>
  311. ????????????????????????????
  312. <br><br><br><br>
  313. <center>
  314. <input type='button' value='????' onclick=\"location.href='../index.php'\">
  315. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  316. <input type='button' value='????' onclick=\"location.href='../admin/index.php'\">
  317. </center>
  318. <script type='text/javascript' src='$notice'></script>
  319. ");
  320. }
  321. ?>