疏林阁 发表于 2006 年 2 月 22 日 00:01:59

mysql数据库批量导入和执行程序

demo:http://shulinge.com/demo.php


<?

// 允许脚本在register globals =off 时工作
$onoff =@ini_get('register_globals')||get_cfg_var('register_globals');

if ($onoff != 1) {
 @extract($_POST, EXTR_SKIP);
 @extract($_GET, EXTR_SKIP);
}

// 去掉转义字符
function stripslashes_array(&$array) {
 while(list($key,$var) = each($array)) {
     if ($key != 'argc' && $key != 'argv' && (strtoupper($key) != $key || ''.intval
($key) == "$key")) {
     if (is_string($var)) {
     $array[$key] = stripslashes($var);
     }
     if (is_array($var)){
     $array[$key] = stripslashes_array($var);
     }
     }
 }
 return $array;
}

// 若 magic_quotes_gpc 打开,调用 stripslashes_array()函数去掉转义字符
if (get_magic_quotes_gpc()) {
 $_POST = stripslashes_array($_POST);
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>mysql数据库批量导入和执行程序</title>
<style type="text/css">
body,td {
 font-family: "sans-serif";
 font-size: "12px";
 line-height: "150%";
}
.INPUT {
 FONT-SIZE: "12px";
 COLOR: "#000000";
 BACKGROUND-COLOR: "#FFFFFF";
 height: "18px";
 border: "1px solid #666666";
}
</style>
</head>
<body style="table-layout:fixed; word-break:break-all">
<center>

<?
if ($_GET['action'] == "sql") {
 $servername = isset($servername) ? $servername : 'localhost';
 $dbusername = isset($dbusername) ? $dbusername : 'root';
 $dbpassword = isset($dbpassword) ? $dbpassword : '';
 $dbname = isset($dbname) ? $dbname : '';
}
if($doquery) {
 if(@mysql_connect($servername,$dbusername,$dbpassword) AND @mysql_select_db($dbname))
 {
     echo "数据库连接执行!\n";
 }
 else
 {
     echo "出错: ".mysql_error();
 }
 $a_query = explode(";",$_POST['sql_query']);
 while (list(,$query) = each($a_query)) {
      $query = trim($query);
      if ($query) {
      if (strstr($query,'CREATE TABLE')) {
      ereg('CREATE TABLE ([^ ]*)',$query,$regs);
          mysql_query("DROP TABLE IF EXISTS $regs");
      echo "<p>正在建立表: ".$regs." …… ";
          $result=@mysql_query($query);
         if ($result)
         {
         echo "成功!</p>\n";
         } else {
         echo "失败!</p>\n";
         }
      } else {
      $result=@mysql_query($query);
      echo ($result) ? "SQL语句成功执行\n" : "出错: ".mysql_error();
      }

      }
 }
 mysql_close();
}

elseif(connect){
 if(@mysql_connect($servername,$dbusername,$dbpassword) AND @mysql_select_db($dbname)) {
     echo "数据库连接执行!\n";
 }else{
     echo "出错: ".mysql_error();
 }
}
?>
<table width="760" border="0" cellpadding="3" cellspacing="1" bgcolor="#ffffff">
<tr class="firstalt">
 <td align="center">mysql数据库批量导入和执行程序</td>
</tr>
<form action="?action=sql" method="POST">
<tr class="secondalt">
 <td align="center">Host:
 <input name="servername" type="text" class="INPUT" value="<?=$servername?>">
 User:
 <input name="dbusername" type="text" class="INPUT" size="15" value="<?=$dbusername?>">
 Pass:
 <input name="dbpassword" type="text" class="INPUT" size="15" value="<?=$dbpassword?>">
 DB:
 <input name="dbname" type="text" class="INPUT" size="15" value="<?=$dbname?>">
 <input name="connect" type="submit" class="INPUT" value="连接"></td>
</tr>
<tr class="firstalt">
 <td align="center"><textarea name="sql_query" cols="85" rows="10"></textarea></td>
</tr>
<tr class="secondalt">
 <td align="center"><input type="submit" name="doquery" value="执行" class="input"></td>
</tr>
</form>
</table>
</body>
</html>

oghuz 发表于 2006 年 2 月 22 日 00:05:35

试了下还行啊

疏林阁 发表于 2006 年 2 月 22 日 00:06:52

偶其实想等ESANK那个MJJ的。。

不知道他的人肉转贴怎么样了。。

esnak 发表于 2006 年 2 月 22 日 00:10:27

哈哈,看到了,谢谢。
在做div+css,人肉的事不忙,流量反正完蛋了,从头来。

PS:div+css不难,不过要从心理上摆脱框架的影子,有点伤神。。。。

vbvs 发表于 2006 年 2 月 22 日 00:16:59

引用第3楼esnak于2006-02-22 00:10发表的“”:
哈哈,看到了,谢谢。
在做div+css,人肉的事不忙,流量反正完蛋了,从头来。

PS:div+css不难,不过要从心理上摆脱框架的影子,有点伤神。。。。
我最早做网站
table不熟悉的时候
用的就是div
不过好象和现在意义上的div还是有点差别的

聶十八 发表于 2006 年 2 月 22 日 00:58:36



问题是我需要导入.SQL的文件
而不是使用查询语句
如果我数据库有300M的话
你叫我如何打开啊?
如何输入啊

疏林阁 发表于 2006 年 2 月 22 日 00:59:50

引用第5楼聶十八于2006-02-22 00:58发表的“”:


问题是我需要导入.SQL的文件
而不是使用查询语句
如果我数据库有300M的话
.......
300M去用PMA好了。。

聶十八 发表于 2006 年 2 月 22 日 01:01:17



还不是一样
所以直接用PMA
或者BMW
法拉利也可以
嘢去洗澡

疏林阁 发表于 2006 年 2 月 22 日 00:01:59

mysql数据库批量导入和执行程序

demo:http://shulinge.com/demo.php


<?

// 允许脚本在register globals =off 时工作
$onoff =@ini_get('register_globals')||get_cfg_var('register_globals');

if ($onoff != 1) {
 @extract($_POST, EXTR_SKIP);
 @extract($_GET, EXTR_SKIP);
}

// 去掉转义字符
function stripslashes_array(&$array) {
 while(list($key,$var) = each($array)) {
     if ($key != 'argc' && $key != 'argv' && (strtoupper($key) != $key || ''.intval
($key) == "$key")) {
     if (is_string($var)) {
     $array[$key] = stripslashes($var);
     }
     if (is_array($var)){
     $array[$key] = stripslashes_array($var);
     }
     }
 }
 return $array;
}

// 若 magic_quotes_gpc 打开,调用 stripslashes_array()函数去掉转义字符
if (get_magic_quotes_gpc()) {
 $_POST = stripslashes_array($_POST);
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>mysql数据库批量导入和执行程序</title>
<style type="text/css">
body,td {
 font-family: "sans-serif";
 font-size: "12px";
 line-height: "150%";
}
.INPUT {
 FONT-SIZE: "12px";
 COLOR: "#000000";
 BACKGROUND-COLOR: "#FFFFFF";
 height: "18px";
 border: "1px solid #666666";
}
</style>
</head>
<body style="table-layout:fixed; word-break:break-all">
<center>

<?
if ($_GET['action'] == "sql") {
 $servername = isset($servername) ? $servername : 'localhost';
 $dbusername = isset($dbusername) ? $dbusername : 'root';
 $dbpassword = isset($dbpassword) ? $dbpassword : '';
 $dbname = isset($dbname) ? $dbname : '';
}
if($doquery) {
 if(@mysql_connect($servername,$dbusername,$dbpassword) AND @mysql_select_db($dbname))
 {
     echo "数据库连接执行!\n";
 }
 else
 {
     echo "出错: ".mysql_error();
 }
 $a_query = explode(";",$_POST['sql_query']);
 while (list(,$query) = each($a_query)) {
      $query = trim($query);
      if ($query) {
      if (strstr($query,'CREATE TABLE')) {
      ereg('CREATE TABLE ([^ ]*)',$query,$regs);
          mysql_query("DROP TABLE IF EXISTS $regs");
      echo "<p>正在建立表: ".$regs." …… ";
          $result=@mysql_query($query);
         if ($result)
         {
         echo "成功!</p>\n";
         } else {
         echo "失败!</p>\n";
         }
      } else {
      $result=@mysql_query($query);
      echo ($result) ? "SQL语句成功执行\n" : "出错: ".mysql_error();
      }

      }
 }
 mysql_close();
}

elseif(connect){
 if(@mysql_connect($servername,$dbusername,$dbpassword) AND @mysql_select_db($dbname)) {
     echo "数据库连接执行!\n";
 }else{
     echo "出错: ".mysql_error();
 }
}
?>
<table width="760" border="0" cellpadding="3" cellspacing="1" bgcolor="#ffffff">
<tr class="firstalt">
 <td align="center">mysql数据库批量导入和执行程序</td>
</tr>
<form action="?action=sql" method="POST">
<tr class="secondalt">
 <td align="center">Host:
 <input name="servername" type="text" class="INPUT" value="<?=$servername?>">
 User:
 <input name="dbusername" type="text" class="INPUT" size="15" value="<?=$dbusername?>">
 Pass:
 <input name="dbpassword" type="text" class="INPUT" size="15" value="<?=$dbpassword?>">
 DB:
 <input name="dbname" type="text" class="INPUT" size="15" value="<?=$dbname?>">
 <input name="connect" type="submit" class="INPUT" value="连接"></td>
</tr>
<tr class="firstalt">
 <td align="center"><textarea name="sql_query" cols="85" rows="10"></textarea></td>
</tr>
<tr class="secondalt">
 <td align="center"><input type="submit" name="doquery" value="执行" class="input"></td>
</tr>
</form>
</table>
</body>
</html>
页: [1]
查看完整版本: mysql数据库批量导入和执行程序