[adminer-svn] SF.net SVN: adminer:[1410] branches/sqlite/adminer/sql.inc.php
Database management in a single PHP file
Brought to you by:
jakubvrana
From: <jak...@us...> - 2010-04-10 20:34:29
|
Revision: 1410 http://adminer.svn.sourceforge.net/adminer/?rev=1410&view=rev Author: jakubvrana Date: 2010-04-10 20:34:08 +0000 (Sat, 10 Apr 2010) Log Message: ----------- Send USE to second connection Modified Paths: -------------- branches/sqlite/adminer/sql.inc.php Modified: branches/sqlite/adminer/sql.inc.php =================================================================== --- branches/sqlite/adminer/sql.inc.php 2010-04-10 20:23:13 UTC (rev 1409) +++ branches/sqlite/adminer/sql.inc.php 2010-04-10 20:34:08 UTC (rev 1410) @@ -29,15 +29,14 @@ $history[] = $query; } $space = "(\\s|/\\*.*\\*/|(#|-- )[^\n]*\n|--\n)"; - $alter_database = "(CREATE|DROP|ALTER)$space+(DATABASE|SCHEMA)\\b~isU"; if (!ini_get("session.use_cookies")) { session_write_close(); } $delimiter = ";"; $offset = 0; $empty = true; - $connection2 = (DB != "" ? connect() : null); // connection for exploring indexes and EXPLAIN (to not replace FOUND_ROWS()) //! PDO - silent error - if (is_object($connection2)) { + $connection2 = connect(); // connection for exploring indexes and EXPLAIN (to not replace FOUND_ROWS()) //! PDO - silent error + if (is_object($connection2) && DB != "") { $connection2->select_db(DB); } $queries = 0; @@ -72,6 +71,9 @@ break; } } else { + if (is_object($connection2) && preg_match("~^$space*(USE)\\b~isU", $q)) { + $connection2->query($q); + } do { $result = $connection->store_result(); $end = explode(" ", microtime()); @@ -87,7 +89,7 @@ echo "</div>\n"; } } else { - if (preg_match("~^$space*$alter_database", $query)) { + if (preg_match("~^$space*(CREATE|DROP|ALTER)$space+(DATABASE|SCHEMA)\\b~isU", $q)) { restart_session(); set_session("databases", null); // clear cache session_write_close(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |