init.php
上传用户:jiangbw
上传日期:2022-03-16
资源大小:49k
文件大小:16k
源码类别:

MySQL数据库

开发平台:

Unix_Linux

  1. <?
  2. /*======================================================================*
  3. || #################################################################### ||
  4. || # BUILD UNDER PHP SCRIPTNET 3.2.1 FRAMEWORK ||
  5. || # ---------------------------------------------------------------- # ||
  6. || # Code2Art Open Source Software. All Rights Reserved.  ||
  7. || # This file should be redistributed in whole or significant part.  # ||
  8. || # ------------------ SCRIPTNET IS FREE SOFTWARE ------------------ # ||
  9. || # http://www.code2art.com | http://www.code2art.com/scriptnet      # ||
  10. || # Copyleft by Benediktus Ardian Hersanto, SE       # ||
  11. || # Sorry if this framework is still unavailable for public       # ||
  12. || # because I still searching on my own head.       # ||
  13. || #################################################################### ||
  14. *======================================================================*/
  15. /*======================================================================*
  16. || #################################################################### ||
  17. || DBF to MySQL Bulk Converter 2.0 ||
  18. ||______________________________________________________________________||
  19. || This utility was developed on 2006, since this were used to be on    ||
  20. || my own library. But I think I should share it to you, because I      ||
  21. || need to save my work on Internet (I don't believe on my own HD drive)||
  22. || it always crash and had a terrible bad sectors.  ||
  23. || Thanks to all person who download this utility, I hope you enjoy it. ||
  24. || ||
  25. || Regards, ||
  26. || Benediktus Ardian Hersanto,SE (ardie_b@yahoo.com) ||
  27. /*======================================================================*/
  28. // ---------------------------------------------------------------------//
  29. // Free to use for everyone who understand PHP
  30. // ---------------------------------------------------------------------//
  31. $time_begin = microtime();
  32. if(!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;
  33. if(!isset($_GET)) $_GET = $HTTP_GET_VARS;
  34. if(!isset($_POST)) $_POST = $HTTP_POST_VARS;
  35. if(!isset($_REQUEST)) $_REQUEST = array_merge($_GET, $_POST); // array_merge not available on version 3
  36. $request = basename(getenv("REDIRECT_URL"));
  37. if (count($_REQUEST) > 1000) {
  38. header("HTTP/1.0 503 Service Unavailable");
  39. exit;
  40. }
  41. if($request==basename(__FILE__)) {
  42. header("HTTP/1.0 404 Not Found");
  43. echo 'File Is Not Found';
  44. }
  45. $match = array();
  46. if (! preg_match('@([0-9]{1,2}).([0-9]{1,2}).([0-9]{1,2})@',phpversion(), $match)) {
  47. $result = preg_match('@([0-9]{1,2}).([0-9]{1,2})@', phpversion(), $match);
  48. }
  49. if (isset($match) && ! empty($match[1])) {
  50. if (! isset($match[2])) {
  51. $match[2] = 0;
  52. }
  53. if (! isset($match[3])) {
  54. $match[3] = 0;
  55. }
  56. } else {
  57. $phpversion = 0;
  58. }
  59. $phpversion = $match[1].'.'.$match[2].$match[3];
  60. settype($phpversion,"double");
  61. define('PHPVERSION',$phpversion);
  62. if(PHPVERSION<4.00) die('<b>Please update your PHP to version 4 or above</b>');
  63. // Internet Cache Control ( Always Get files from server not from Browser's Cache )
  64. if(!headers_sent())header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
  65. if(!headers_sent())header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
  66. if(!headers_sent())header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate"); // HTTP/1.1
  67. if(!headers_sent())header("Cache-Control: post-check=0, pre-check=0", false);
  68. if(!headers_sent())header("Pragma: no-cache"); // HTTP/1.0
  69. if(PHPVERSION>4.10) import_request_variables("gP","FORMS_"); else
  70. {
  71. if(isset($_GET)&&is_array($_GET)&&count($_GET)>0) {
  72. while (list($key,$val)=each($_GET)) {
  73. $var = 'FORMS_'.$key;
  74. global $$var;
  75. $$var = htmlentities(addslashes($val), ENT_QUOTES);
  76. }
  77. }
  78. if(isset($_POST)&&is_array($_POST)&&(count($_POST)>0)) {
  79. while (list($key,$val)=each($_POST)) {
  80. $var = 'FORMS_'.$key;
  81. global $$var;
  82. $$var = htmlentities(addslashes($val), ENT_QUOTES);
  83. }
  84. }
  85. }
  86. class configParser {
  87. var $file;
  88. var $constants;
  89. var $RootDir;
  90. //var $terminal = array(" ","\",'"',"'","+","-","*","/","[","]","(",")","!",";",".",",","=","<",">");
  91. function configParser(){
  92. $basename = explode('.',basename(__FILE__));
  93. $file_ext = array_pop($basename);
  94. define('FILE_EXT',$file_ext);
  95. $this->RootDir = str_replace('\','/',dirname(__FILE__));
  96. define('ROOT_DIR',$this->RootDir);
  97. $filename = ROOT_DIR.'/config.ini.' . FILE_EXT;
  98. define('CONFIG_FILE',$filename);
  99. if(!file_exists($filename)) die('<b>'.basename($filename).' is missing cannot continue</b>');
  100. $this->file = $filename;
  101. }
  102. function parse(){
  103. if(!file_exists(ROOT_DIR."/cache/constants.".FILE_EXT)||(file_exists(ROOT_DIR."/cache/constants.".FILE_EXT)&&(filemtime($this->file)>(time()-(60*60*(1/60)))))) {
  104. $source = file($this->file);
  105. $match = array();
  106. for($i=0;$i<count($source);$i++) {
  107. preg_match("/[;[a-zA-Z0-9="'/.'"]].*/",$source[$i],$match);
  108. if(count($match)>0) {
  109. $data = explode("=",$match[0]);
  110. if(count($data)>1) {
  111. $value = trim(ereg_replace('"|'|;(.*)+',"",$data[1]));
  112. if(!eregi(' ',trim($data[0]))&&(strlen(trim($data[0]))>3))
  113. if (isset($last_key_name)&&(isset($value))) { $this->constants[$last_key_name][trim($data[0])] = $value; }
  114. }else if(eregi("[(.*)]",$match[0])) {
  115. $last_key_name = trim(ereg_replace("[|]","",$match[0]));
  116. }
  117. unset($match);
  118. unset($value);
  119. } else {
  120. if(PHPVERSION<4.10) {
  121. $comments = explode(";",$source[$i]);
  122. $value = $comments[0];
  123. if(isset($value)) {
  124. $data = explode("=",$value);
  125. if(count($data)==2) {
  126. $results = array();
  127. if(isset($last_key_name)) $results[$last_key_name][trim($data[0])] = trim(ereg_replace('"|'',"",$data[1]));
  128. }
  129. }
  130. } else {
  131. //print_r($match);
  132. }
  133. }
  134. }
  135. $this->create_cache();
  136. } else {
  137. include(ROOT_DIR."/cache/constants.".FILE_EXT);
  138. }
  139. }
  140. function generateClientID() {
  141. return md5(microtime().uniqid(rand(),true));
  142. }
  143. function create_cache() {
  144. if(defined('ROOT_DIR')) {
  145. if(is_dir(ROOT_DIR)) {
  146. $fp = @fopen(ROOT_DIR."/cache/constants.".FILE_EXT,"w");
  147. if(!$fp) $permission_denied = 1;
  148. if(isset($permission_denied)) {
  149. if(@mkdir(ROOT_DIR."/cache",0777))
  150. $fp = @fopen(ROOT_DIR."/cache/constants.".FILE_EXT,"w");
  151. else {
  152. $errdesc = 'Permission denied creating cache folder "/cache" on your root folder';
  153. die($errdesc);
  154. }
  155. }
  156. chmod(ROOT_DIR.'/cache/constants.'.FILE_EXT,0777);
  157. if($fp) {
  158. if ($fp) fwrite($fp,"<?");
  159. while(list($keys,$vals)=each($this->constants)) {
  160. while(list($key,$val)=each($vals)) {
  161. $value = trim(ereg_replace('"|'',"",$val));
  162. if(!(eregi("true",$value)||eregi("false",$value))) $value = """.$value.""";
  163. if ($fp) fwrite($fp,"rnif(!defined('".$key."')) define("".$key."",".$value.");");
  164. //if ($fp) fwrite($fp,"rndefine("".$key."",".(((strtolower($value)=='true')||(strtolower($value)=='false'))?((strtolower($value)=='true')?1:0):""".$value.""").");");
  165. }
  166. }
  167. unset($keys);
  168. unset($key);
  169. unset($val);
  170. unset($vals);
  171. unset($value);
  172. if ($fp) fwrite($fp,"rn?>");
  173. }
  174. if(isset($fp)) fclose($fp);
  175. include(ROOT_DIR."/cache/constants.".FILE_EXT);
  176. } else die('<b>Invalid directory specified on DOC_PATH from your configuration file or directory "'.$this->RootDir.'" not found</b>');
  177. } else die('<b>Document Root System is not defined or cannot find on your '.$this->file.' file</b>');
  178. }
  179. }
  180. class dynamicClass {
  181. var $dump = false;
  182. var $trace = false;
  183. var $error_log = "/logs/errors.log";
  184. function dynamicClass() {
  185. $drivername = DB_REF;
  186. global $$drivername;
  187. if(!is_object($$drivername)) {
  188. LoadLibrary('dbms');
  189. //new DBMS;
  190. }
  191. $this->db = &$$drivername;
  192. }
  193. function RaiseError($msg,$type=E_USER_WARNING) {
  194. if($this->dump) {
  195. $date = getdate();
  196. $REMOTE_ADDRESS = getenv('REMOTE_ADDR');
  197. error_log("[{$date['weekday']} {$date['month']} {$date['mday']} {$date['hours']}:{$date['minutes']}:{$date['seconds']} {$date['year']}] [client {$REMOTE_ADDRESS}] [Error : {$msg}]rn", 3, $this->error_log);
  198. }
  199. if($this->trace) trigger_error($msg,$type);
  200. }
  201. }
  202. function getProcessLen() {
  203. global $time_begin;
  204. $time_end = microtime();
  205. return $time_end-$time_begin;
  206. }
  207. function LoadLibrary($library_name,$autocreate=true,$vHandle='') {
  208. if(!defined('ROOT_DIR')&&!defined('SYS_DIR')) {
  209. trigger_error('<b>Document Root System is not defined or cannot find on your '.CONFIG_FILE.' file</b>',E_USER_ERROR);
  210. return false;
  211. } else {
  212. $lib = ROOT_DIR.SYS_DIR."/".$library_name.'/'.$library_name.'.ini.'.FILE_EXT;
  213. if(file_exists($lib)) {
  214. include_once($lib);
  215. if(($vHandle!='')&&($autocreate)) {
  216. global $$vHandle;
  217. $$vHandle = new $library_name();
  218. }/* else {
  219. $vHandle = new $library_name();
  220. }*/
  221. return true;
  222. } else {
  223. trigger_error("<b>Class module <font color="#FF0000">".$library_name."</font></b> was not load properly or file was not found!!",E_USER_ERROR);
  224. return false;
  225. }
  226. }
  227. }
  228. function LoadClass($classname) {
  229. $lib = ROOT_DIR.SYS_DIR.'/'.$classname.'.lib.'.FILE_EXT;
  230. if(file_exists($lib)) {
  231. include(ROOT_DIR.'/lib/php4/'.$classname.'.lib.'.FILE_EXT);
  232. } else {
  233. trigger_error("<b>Class name <font color="#FF0000">".$classname."</font></b> was not found or file was not found!!",E_USER_ERROR);
  234. return false;
  235. }
  236. }
  237. function GetAuthentication($title) {
  238. if (!isset($_SERVER['PHP_AUTH_USER'])) {
  239.      header('WWW-Authenticate: Basic realm="'.addslashes($title).'"');
  240.      header('HTTP/1.0 401 Unauthorized');
  241.      echo "<Script Language='Javascript'>document.write(unescape('%3C%68%74%6D%6C%3E%0A%3C%68%65%61%64%3E%0A%09%3C%74%69%74%6C%65%3E%20%44%61%74%61%62%61%73%65%20%45%72%72%6F%72%3C%2F%74%69%74%6C%65%3E%0A%09%3C%6D%65%74%61%20%68%74%74%70%2D%65%71%75%69%76%3D%22%43%6F%6E%74%65%6E%74%2D%54%79%70%65%22%20%63%6F%6E%74%65%6E%74%3D%22%74%65%78%74%2F%68%74%6D%6C%3B%20%63%68%61%72%73%65%74%3D%49%53%4F%2D%38%38%35%39%2D%31%22%20%2F%3E%0A%09%3C%6D%65%74%61%20%6E%61%6D%65%3D%22%52%4F%42%4F%54%53%22%20%63%6F%6E%74%65%6E%74%3D%22%4E%4F%49%4E%44%45%58%2C%4E%4F%46%4F%4C%4C%4F%57%2C%4E%4F%41%52%43%48%49%56%45%22%20%2F%3E%0A%09%3C%73%74%79%6C%65%20%74%79%70%65%3D%22%74%65%78%74%2F%63%73%73%22%3E%0A%09%3C%21%2D%2D%09%0A%09%62%6F%64%79%20%7B%20%62%61%63%6B%67%72%6F%75%6E%64%2D%63%6F%6C%6F%72%3A%20%77%68%69%74%65%3B%20%63%6F%6C%6F%72%3A%20%62%6C%61%63%6B%3B%20%7D%0A%09%23%63%6F%6E%74%61%69%6E%65%72%20%7B%20%77%69%64%74%68%3A%20%34%30%30%70%78%3B%20%7D%0A%09%23%6D%65%73%73%61%67%65%20%20%20%7B%20%77%69%64%74%68%3A%20%34%30%30%70%78%3B%20%63%6F%6C%6F%72%3A%20%62%6C%61%63%6B%3B%20%62%61%63%6B%67%72%6F%75%6E%64%2D%63%6F%6C%6F%72%3A%20%23%46%46%46%46%43%43%3B%20%7D%0A%09%23%62%6F%64%79%74%69%74%6C%65%20%7B%20%66%6F%6E%74%3A%20%31%33%70%74%2F%31%35%70%74%20%76%65%72%64%61%6E%61%2C%20%61%72%69%61%6C%2C%20%73%61%6E%73%2D%73%65%72%69%66%3B%20%68%65%69%67%68%74%3A%20%33%35%70%78%3B%20%76%65%72%74%69%63%61%6C%2D%61%6C%69%67%6E%3A%20%74%6F%70%3B%20%7D%0A%09%2E%62%6F%64%79%74%65%78%74%20%20%7B%20%66%6F%6E%74%3A%20%38%70%74%2F%31%31%70%74%20%76%65%72%64%61%6E%61%2C%20%61%72%69%61%6C%2C%20%73%61%6E%73%2D%73%65%72%69%66%3B%20%7D%0A%09%61%3A%6C%69%6E%6B%20%20%20%20%20%7B%20%66%6F%6E%74%3A%20%38%70%74%2F%31%31%70%74%20%76%65%72%64%61%6E%61%2C%20%61%72%69%61%6C%2C%20%73%61%6E%73%2D%73%65%72%69%66%3B%20%63%6F%6C%6F%72%3A%20%72%65%64%3B%20%7D%0A%09%61%3A%76%69%73%69%74%65%64%20%20%7B%20%66%6F%6E%74%3A%20%38%70%74%2F%31%31%70%74%20%76%65%72%64%61%6E%61%2C%20%61%72%69%61%6C%2C%20%73%61%6E%73%2D%73%65%72%69%66%3B%20%63%6F%6C%6F%72%3A%20%23%34%65%34%65%34%65%3B%20%7D%0A%09%2D%2D%3E%0A%09%3C%2F%73%74%79%6C%65%3E%0A%3C%2F%68%65%61%64%3E%0A%3C%62%6F%64%79%3E%0A%3C%74%61%62%6C%65%20%63%65%6C%6C%70%61%64%64%69%6E%67%3D%22%33%22%20%63%65%6C%6C%73%70%61%63%69%6E%67%3D%22%35%22%20%69%64%3D%22%63%6F%6E%74%61%69%6E%65%72%22%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%69%64%3D%22%62%6F%64%79%74%69%74%6C%65%22%20%77%69%64%74%68%3D%22%31%30%30%25%22%3E%41%63%63%65%73%73%20%44%65%6E%69%65%64%3C%2F%74%64%3E%0A%3C%2F%74%72%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%63%6C%61%73%73%3D%22%62%6F%64%79%74%65%78%74%22%20%63%6F%6C%73%70%61%6E%3D%22%32%22%3E%43%61%6E%6E%6F%74%20%63%6F%6E%74%69%6E%75%65%20%74%6F%20%74%68%65%20%61%63%63%6F%75%6E%74%20%70%61%67%65%73%2E%3C%2F%74%64%3E%0A%3C%2F%74%72%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%63%6F%6C%73%70%61%6E%3D%22%32%22%3E%3C%68%72%20%2F%3E%3C%2F%74%64%3E%0A%3C%2F%74%72%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%63%6C%61%73%73%3D%22%62%6F%64%79%74%65%78%74%22%20%63%6F%6C%73%70%61%6E%3D%22%32%22%3E%0A%0A%09%09%50%6C%65%61%73%65%20%74%72%79%20%74%68%65%20%66%6F%6C%6C%6F%77%69%6E%67%3A%20%0A%09%09%3C%75%6C%3E%0A%09%09%09%3C%6C%69%3E%4C%6F%61%64%20%74%68%65%20%70%61%67%65%20%61%67%61%69%6E%20%62%79%20%63%6C%69%63%6B%69%6E%67%20%74%68%65%20%3C%61%20%68%72%65%66%3D%22%23%22%20%6F%6E%63%6C%69%63%6B%3D%22%77%69%6E%64%6F%77%2E%6C%6F%63%61%74%69%6F%6E%20%3D%20%77%69%6E%64%6F%77%2E%6C%6F%63%61%74%69%6F%6E%3B%22%3E%0A%09%09%09%52%65%66%72%65%73%68%3C%2F%61%3E%20%62%75%74%74%6F%6E%20%69%6E%20%79%6F%75%72%20%77%65%62%20%62%72%6F%77%73%65%72%2E%3C%2F%6C%69%3E%0A%09%09%09%3C%6C%69%3E%4F%70%65%6E%20%74%68%65%20%3C%61%20%68%72%65%66%3D%22%2F%22%3E%3C%73%63%72%69%70%74%20%6C%61%6E%67%75%61%67%65%3D%22%6A%61%76%61%73%63%72%69%70%74%22%3E%64%6F%63%75%6D%65%6E%74%2E%77%72%69%74%65%28%77%69%6E%64%6F%77%2E%6C%6F%63%61%74%69%6F%6E%29%3C%2F%73%63%72%69%70%74%3E%3C%2F%61%3E%20%68%6F%6D%65%20%70%61%67%65%2C%20%74%68%65%6E%20%74%72%79%20%74%6F%20%6F%70%65%6E%20%0A%09%09%09%61%6E%6F%74%68%65%72%20%70%61%67%65%2E%3C%2F%6C%69%3E%0A%09%09%09%3C%6C%69%3E%43%6C%69%63%6B%20%74%68%65%20%3C%61%20%68%72%65%66%3D%22%6A%61%76%61%73%63%72%69%70%74%3A%68%69%73%74%6F%72%79%2E%62%61%63%6B%28%31%29%22%3E%42%61%63%6B%3C%2F%61%3E%20%62%75%74%74%6F%6E%20%0A%09%09%09%74%6F%20%74%72%79%20%61%6E%6F%74%68%65%72%20%6C%69%6E%6B%2E%3C%2F%6C%69%3E%0A%0A%09%09%3C%2F%75%6C%3E%0A%09%3C%2F%74%64%3E%0A%3C%2F%74%72%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%63%6C%61%73%73%3D%22%62%6F%64%79%74%65%78%74%22%20%63%6F%6C%73%70%61%6E%3D%22%32%22%3E%54%68%65%20%3C%61%20%69%64%3D%22%68%6F%73%74%6E%61%6D%65%22%20%68%72%65%66%3D%22%23%22%3E%6C%6F%63%61%6C%68%6F%73%74%3C%2F%61%3E%20%66%6F%72%75%6D%20%74%65%63%68%6E%69%63%61%6C%20%73%74%61%66%66%20%68%61%76%65%20%0A%09%62%65%65%6E%20%6E%6F%74%69%66%69%65%64%20%6F%66%20%74%68%65%20%65%72%72%6F%72%2C%20%74%68%6F%75%67%68%20%79%6F%75%20%6D%61%79%20%3C%61%20%69%64%3D%22%61%64%6D%69%6E%5F%63%6F%6E%74%61%63%74%22%20%68%72%65%66%3D%22%23%22%3E%0A%09%63%6F%6E%74%61%63%74%20%74%68%65%6D%3C%2F%61%3E%20%69%66%20%74%68%65%20%70%72%6F%62%6C%65%6D%20%70%65%72%73%69%73%74%73%2E%3C%2F%74%64%3E%0A%3C%2F%74%72%3E%0A%3C%74%72%3E%0A%09%3C%74%64%20%63%6C%61%73%73%3D%22%62%6F%64%79%74%65%78%74%22%20%63%6F%6C%73%70%61%6E%3D%22%32%22%3E%26%6E%62%73%70%3B%3C%62%72%20%2F%3E%57%65%20%61%70%6F%6C%6F%67%69%73%65%20%66%6F%72%20%61%6E%79%20%69%6E%63%6F%6E%76%65%6E%69%65%6E%63%65%2E%3C%2F%74%64%3E%0A%0A%3C%2F%74%72%3E%0A%3C%2F%74%61%62%6C%65%3E%0A%3C%2F%62%6F%64%79%3E%0A%3C%2F%68%74%6D%6C%3E'));window.onload=function(){document.getElementById('hostname').href='http://".constant('DOMAIN_NAME')."';document.getElementById('hostname').innerHTML='".constant('DOMAIN_NAME')."';document.getElementById('admin_contact').href='mailto:".constant('ADMIN_MAIL')."';}</Script>";
  242. exit;
  243.    } else {
  244. return true;
  245. }
  246. }
  247. function DestroyModules() {
  248. global $_DESTRUCTORS;
  249. if(is_array($_DESTRUCTORS)) {
  250. while(list($k,$v)=each($_DESTRUCTORS)) {
  251. global $$k;
  252. $handle = $$k;
  253. $handle->$v();
  254. }
  255. }
  256. }
  257. register_shutdown_function("DestroyModules");
  258. $init = new configParser();
  259. $init->parse();
  260. if((PHPVERSION<4.10)&&(file_exists(ROOT_DIR.SYS_DIR."/framework/func.400.php"))) include(ROOT_DIR.SYS_DIR."/framework/func.400.php");
  261. if(file_exists(ROOT_DIR.'/autoload.php')) include(ROOT_DIR.'/autoload.php');
  262. ?>