2 /***************************************
3 * SQLite-MySQL database transfer tool *
6 ***************************************/
8 // This library is GPL.
10 error_reporting(E_ERROR | E_WARNING);
12 if (!file_exists('./nucleus/sqlite/sqlite.php')) exit;
14 if (!isset($_GET['dbfile'])) exit;
16 $dbfile=str_replace(array('\\','/'),array('',''),$_GET['dbfile']);
17 if (isset($_GET['numatonce'])) $numatonce=(int)$_GET['numatonce'];
19 if (isset($_GET['refreshwait'])) $refreshwait=(int)$_GET['refreshwait'];
23 if (substr($dbfile,0,1)=='.') exit;
24 if (preg_match('/\.php$/i',$dbfile)) exit;
25 if (preg_match('/\.htm$/i',$dbfile)) exit;
26 if (preg_match('/\.html$/i',$dbfile)) exit;
27 if (!file_exists('./nucleus/sqlite/'.$dbfile)) exit;
29 include ('./nucleus/sqlite/sqlite.php');
31 $dbarray=file('./nucleus/sqlite/'.$dbfile);
32 if (isset($_GET['dbpoint'])) $dbpoint=(int)$_GET['dbpoint'];
37 while ($numatonce--) {
43 while (@is_string(($t=$dbarray[$dbpoint]))) {
44 if (trim($t)!='' && substr($t,0,1)!='#' && substr($t,0,2)!='--') break;
48 //Get query string from array
49 while ($cont && @is_string($dbarray[$dbpoint])) {
50 $t=$dbarray[$dbpoint++];
53 for ($i=0;$i<strlen($t);$i++) {
59 } else if ($c=="\\") {
66 if (($c=$t[0])==';') {
72 if ($c=="'") $instring=true;
76 if (nucleus_mysql_query($query)) $ret.="OK<br/>".htmlspecialchars(substr($query,0,200)).".....<hr />\n";
80 nucleus_mysql_close();
84 while (@is_string(($dbarray[$dbtotal]))) $dbtotal++;
86 if ($dbtotal==$dbpoint) { // All done.
87 unlink('./nucleus/sqlite/'.$dbfile);
88 if (@include('./nucleus/language/japanese-utf8.php')) $lng='UTF-8';
89 else if (@include('./nucleus/language/japanese-euc.php')) $lng='EUC-JP';
91 echo "<html><head><title>Restore Complete</title>\n";
92 if ($lng) echo "<meta http-equiv=\"content-type\" content=\"text/html; charset=$lng\" />\n";
93 echo "</head><body>\n";
95 echo '<p>'._RESTORE_COMPLETE.'</p>';
96 echo '<p><a href="../../">'._BACKTOMANAGE.'</a></p>';
98 echo '<p>Restore Complete</p>';
99 echo '<p><a href="../../">Back to Nucleus management</a></p>';
101 echo "\n</body></html>";
105 $f=(int)((float)100*$dbpoint/$dbtotal);
106 $ret="$f % done.<hr>\n".$ret;
108 if (isset($_GET['numatonce'])) $numatonce=$_GET['numatonce'];
110 $url="?dbfile=$dbfile&numatonce=$numatonce&refreshwait=$refreshwait&dbpoint=$dbpoint";
111 if ($err) $refresh='';
112 else $refresh="<meta http-equiv=\"refresh\" content=\"$refreshwait; url=$url\">";
115 <title>Creating database file</title>
116 <?php echo $refresh; ?>
118 <a href="<?php echo $url; ?>">Continue</a><hr />