Thread: [adminer-svn] SF.net SVN: adminer:[1490] trunk/adminer (Page 2)
Database management in a single PHP file
Brought to you by:
jakubvrana
From: <jak...@us...> - 2010-04-23 23:49:28
|
Revision: 1490 http://adminer.svn.sourceforge.net/adminer/?rev=1490&view=rev Author: jakubvrana Date: 2010-04-23 23:49:21 +0000 (Fri, 23 Apr 2010) Log Message: ----------- Driver specific BEGIN Modified Paths: -------------- trunk/adminer/drivers/mssql.inc.php trunk/adminer/drivers/mysql.inc.php trunk/adminer/drivers/pgsql.inc.php trunk/adminer/drivers/sqlite.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/drivers/mssql.inc.php =================================================================== --- trunk/adminer/drivers/mssql.inc.php 2010-04-23 20:18:00 UTC (rev 1489) +++ trunk/adminer/drivers/mssql.inc.php 2010-04-23 23:49:21 UTC (rev 1490) @@ -394,6 +394,10 @@ return " IDENTITY"; } + function begin() { + return queries("BEGIN TRANSACTION"); + } + function insert_into($table, $set) { return queries("INSERT INTO " . idf_escape($table) . ($set ? " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")" : "DEFAULT VALUES")); } Modified: trunk/adminer/drivers/mysql.inc.php =================================================================== --- trunk/adminer/drivers/mysql.inc.php 2010-04-23 20:18:00 UTC (rev 1489) +++ trunk/adminer/drivers/mysql.inc.php 2010-04-23 23:49:21 UTC (rev 1490) @@ -680,6 +680,13 @@ ); } + /** Begin transaction + * @return bool + */ + function begin() { + return queries("BEGIN"); + } + /** Insert data into table * @param string * @param array Modified: trunk/adminer/drivers/pgsql.inc.php =================================================================== --- trunk/adminer/drivers/pgsql.inc.php 2010-04-23 20:18:00 UTC (rev 1489) +++ trunk/adminer/drivers/pgsql.inc.php 2010-04-23 23:49:21 UTC (rev 1490) @@ -440,6 +440,10 @@ ); } + function begin() { + return queries("BEGIN"); + } + function insert_into($table, $set) { return queries("INSERT INTO " . idf_escape($table) . ($set ? " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")" : "DEFAULT VALUES")); } Modified: trunk/adminer/drivers/sqlite.inc.php =================================================================== --- trunk/adminer/drivers/sqlite.inc.php 2010-04-23 20:18:00 UTC (rev 1489) +++ trunk/adminer/drivers/sqlite.inc.php 2010-04-23 23:49:21 UTC (rev 1490) @@ -474,6 +474,10 @@ ); } + function begin() { + return queries("BEGIN"); + } + function insert_into($table, $set) { return queries("INSERT INTO " . idf_escape($table) . ($set ? " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")" : "DEFAULT VALUES")); } Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2010-04-23 20:18:00 UTC (rev 1489) +++ trunk/adminer/select.inc.php 2010-04-23 23:49:21 UTC (rev 1490) @@ -126,7 +126,7 @@ $cols = array_keys($fields); preg_match_all('~(?>"[^"]*"|[^"\\r\\n]+)+~', $file, $matches); $affected = count($matches[0]); - queries("START TRANSACTION"); + begin(); $separator = ($_POST["separator"] == "csv" ? "," : ";"); foreach ($matches[0] as $key => $val) { preg_match_all("~((\"[^\"]*\")+|[^$separator]*)$separator~", $val . $separator, $matches2); @@ -313,7 +313,7 @@ $id = h("val[$unique_idf][" . bracket_escape($key) . "]"); $value = $_POST["val"][$unique_idf][bracket_escape($key)]; $h_value = h(isset($value) ? $value : $row[$key]); - $editable = is_utf8($val) && !strpos($val, "<em>...</em>"); + $editable = is_utf8($val) && !strpos($val, "<em>...</em>"); //! function results, not unique key $text = ereg('text|blob', $field["type"]); echo (($_GET["modify"] && $editable) || isset($value) ? "<td>" . ($text ? "<textarea name='$id' cols='30' rows='" . (substr_count($row[$key], "\n") + 1) . "'>$h_value</textarea>" : "<input name='$id' value='$h_value' size='$lengths[$key]'>") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2010-04-26 16:35:16
|
Revision: 1494 http://adminer.svn.sourceforge.net/adminer/?rev=1494&view=rev Author: jakubvrana Date: 2010-04-26 16:19:26 +0000 (Mon, 26 Apr 2010) Log Message: ----------- LIMIT separator Modified Paths: -------------- trunk/adminer/drivers/mssql.inc.php trunk/adminer/drivers/mysql.inc.php trunk/adminer/drivers/pgsql.inc.php trunk/adminer/drivers/sqlite.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/drivers/mssql.inc.php =================================================================== --- trunk/adminer/drivers/mssql.inc.php 2010-04-25 07:25:55 UTC (rev 1493) +++ trunk/adminer/drivers/mssql.inc.php 2010-04-26 16:19:26 UTC (rev 1494) @@ -251,7 +251,7 @@ return get_vals("EXEC sp_databases"); } - function limit($query, $limit, $offset = 0) { + function limit($query, $limit, $offset = 0, $separator = " ") { return (isset($limit) ? " TOP (" . ($limit + $offset) . ")" : "") . " $query"; // seek later } Modified: trunk/adminer/drivers/mysql.inc.php =================================================================== --- trunk/adminer/drivers/mysql.inc.php 2010-04-25 07:25:55 UTC (rev 1493) +++ trunk/adminer/drivers/mysql.inc.php 2010-04-26 16:19:26 UTC (rev 1494) @@ -260,10 +260,11 @@ * @param string everything after SELECT * @param int * @param int + * @param string * @return string */ - function limit($query, $limit, $offset = 0) { - return " $query" . (isset($limit) ? "\nLIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); + function limit($query, $limit, $offset = 0, $separator = " ") { + return " $query" . (isset($limit) ? $separator . "LIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); } /** Formulate SQL modification query with limit 1 Modified: trunk/adminer/drivers/pgsql.inc.php =================================================================== --- trunk/adminer/drivers/pgsql.inc.php 2010-04-25 07:25:55 UTC (rev 1493) +++ trunk/adminer/drivers/pgsql.inc.php 2010-04-26 16:19:26 UTC (rev 1494) @@ -163,8 +163,8 @@ return get_vals("SELECT datname FROM pg_database"); } - function limit($query, $limit, $offset = 0) { - return " $query" . (isset($limit) ? "\nLIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); + function limit($query, $limit, $offset = 0, $separator = " ") { + return " $query" . (isset($limit) ? $separator . "LIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); } function limit1($query) { Modified: trunk/adminer/drivers/sqlite.inc.php =================================================================== --- trunk/adminer/drivers/sqlite.inc.php 2010-04-25 07:25:55 UTC (rev 1493) +++ trunk/adminer/drivers/sqlite.inc.php 2010-04-26 16:19:26 UTC (rev 1494) @@ -211,8 +211,8 @@ return array(); } - function limit($query, $limit, $offset = 0) { - return " $query" . (isset($limit) ? "\nLIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); + function limit($query, $limit, $offset = 0, $separator = " ") { + return " $query" . (isset($limit) ? $separator . "LIMIT $limit" . ($offset ? " OFFSET $offset" : "") : ""); } function limit1($query) { Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2010-04-25 07:25:55 UTC (rev 1493) +++ trunk/adminer/select.inc.php 2010-04-26 16:19:26 UTC (rev 1494) @@ -197,7 +197,7 @@ $page = floor(($found_rows - 1) / $limit); } - $query = "SELECT" . limit((intval($limit) && $group && count($group) < count($select) && $driver == "sql" ? "SQL_CALC_FOUND_ROWS " : "") . $from . $group_by, ($limit != "" ? intval($limit) : null), ($page ? $limit * $page : 0)); + $query = "SELECT" . limit((intval($limit) && $group && count($group) < count($select) && $driver == "sql" ? "SQL_CALC_FOUND_ROWS " : "") . $from . $group_by, ($limit != "" ? intval($limit) : null), ($page ? $limit * $page : 0), "\n"); echo $adminer->selectQuery($query); $result = $connection->query($query); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2010-04-28 00:10:36
|
Revision: 1507 http://adminer.svn.sourceforge.net/adminer/?rev=1507&view=rev Author: jakubvrana Date: 2010-04-28 00:10:30 +0000 (Wed, 28 Apr 2010) Log Message: ----------- Display routine parameter type in title (thanks to paranoiq) Modified Paths: -------------- trunk/adminer/call.inc.php trunk/adminer/include/editing.inc.php Modified: trunk/adminer/call.inc.php =================================================================== --- trunk/adminer/call.inc.php 2010-04-27 15:57:15 UTC (rev 1506) +++ trunk/adminer/call.inc.php 2010-04-28 00:10:30 UTC (rev 1507) @@ -55,7 +55,7 @@ foreach ($in as $key) { $field = $routine["fields"][$key]; $name = $field["field"]; - echo "<tr><th>" . h($name); + echo "<tr><th>" . $adminer->fieldName($field); $value = $_POST["fields"][$name]; if ($value != "" && ereg("enum|set", $field["type"])) { $value = intval($value); Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2010-04-27 15:57:15 UTC (rev 1506) +++ trunk/adminer/include/editing.inc.php 2010-04-28 00:10:30 UTC (rev 1507) @@ -288,7 +288,7 @@ function routine($name, $type) { global $connection, $enum_length, $inout, $types; $aliases = array("bit" => "tinyint", "bool" => "tinyint", "boolean" => "tinyint", "integer" => "int", "double precision" => "float", "real" => "float", "dec" => "decimal", "numeric" => "decimal", "fixed" => "decimal", "national char" => "char", "national varchar" => "varchar"); - $type_pattern = "(" . implode("|", array_keys($types + $aliases)) . ")(?:\\s*\\(((?:[^'\")]*|$enum_length)+)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s]+)['\"]?)?"; + $type_pattern = "((" . implode("|", array_keys($types + $aliases)) . ")(?:\\s*\\(((?:[^'\")]*|$enum_length)+)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s]+)['\"]?)?"; $pattern = "\\s*(" . ($type == "FUNCTION" ? "" : implode("|", $inout)) . ")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$type_pattern"; $create = $connection->result("SHOW CREATE $type " . idf_escape($name), 2); preg_match("~\\(((?:$pattern\\s*,?)*)\\)" . ($type == "FUNCTION" ? "\\s*RETURNS\\s+$type_pattern" : "") . "\\s*(.*)~is", $create, $match); @@ -296,21 +296,25 @@ preg_match_all("~$pattern\\s*,?~is", $match[1], $matches, PREG_SET_ORDER); foreach ($matches as $param) { $name = str_replace("``", "`", $param[2]) . $param[3]; - $data_type = strtolower($param[4]); + $data_type = strtolower($param[5]); $fields[] = array( "field" => $name, "type" => (isset($aliases[$data_type]) ? $aliases[$data_type] : $data_type), - "length" => preg_replace_callback("~$enum_length~s", 'normalize_enum', $param[5]), - "unsigned" => strtolower(preg_replace('~\\s+~', ' ', trim("$param[7] $param[6]"))), + "length" => preg_replace_callback("~$enum_length~s", 'normalize_enum', $param[6]), + "unsigned" => strtolower(preg_replace('~\\s+~', ' ', trim("$param[8] $param[7]"))), + "full_type" => $param[4], "inout" => strtoupper($param[1]), - "collation" => strtolower($param[8]), + "collation" => strtolower($param[9]), ); } if ($type != "FUNCTION") { - return array("fields" => $fields, "definition" => $match[10]); + return array("fields" => $fields, "definition" => $match[11]); } - $returns = array("type" => $match[10], "length" => $match[11], "unsigned" => $match[13], "collation" => $match[14]); - return array("fields" => $fields, "returns" => $returns, "definition" => $match[15]); + return array( + "fields" => $fields, + "returns" => array("type" => $match[12], "length" => $match[13], "unsigned" => $match[15], "collation" => $match[16]), + "definition" => $match[17], + ); } /** Issue grant or revoke commands This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-25 10:26:55
|
Revision: 1004 http://adminer.svn.sourceforge.net/adminer/?rev=1004&view=rev Author: jakubvrana Date: 2009-08-25 10:26:47 +0000 (Tue, 25 Aug 2009) Log Message: ----------- Function nbsp Modified Paths: -------------- trunk/adminer/db.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/processlist.inc.php trunk/adminer/table.inc.php trunk/adminer/variables.inc.php Modified: trunk/adminer/db.inc.php =================================================================== --- trunk/adminer/db.inc.php 2009-08-25 10:25:56 UTC (rev 1003) +++ trunk/adminer/db.inc.php 2009-08-25 10:26:47 UTC (rev 1004) @@ -60,7 +60,7 @@ $val = number_format($row[$key], 0, '.', lang(',')); echo '<td align="right">' . (strlen($row[$key]) ? '<a href="' . h(ME . "$link=") . urlencode($name) . '">' . str_replace(" ", " ", ($key == "Rows" && $row["Engine"] == "InnoDB" && $val ? lang('~ %s', $val) : $val)) . '</a>' : ' '); } - echo "<td>" . (strlen(trim($row["Comment"])) ? h($row["Comment"]) : " "); + echo "<td>" . nbsp($row["Comment"]); } else { echo '<td colspan="8"><a href="' . h(ME) . "select=" . urlencode($name) . '">' . lang('View') . '</a>'; } Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-08-25 10:25:56 UTC (rev 1003) +++ trunk/adminer/include/functions.inc.php 2009-08-25 10:26:47 UTC (rev 1004) @@ -23,6 +23,10 @@ return htmlspecialchars($string, ENT_QUOTES); } +function nbsp($string) { + return (strlen(trim($string)) ? h($string) : " "); +} + function optionlist($options, $selected = null, $use_keys = false) { $return = ""; foreach ($options as $k => $v) { @@ -301,7 +305,7 @@ $functions = (isset($_GET["select"]) ? array("orig" => lang('original')) : array()) + $adminer->editFunctions($field); $first = array_search("", $functions) + (isset($_GET["select"]) ? 1 : 0); $onchange = ($first ? " onchange=\"var f = this.form['function[" . addcslashes($name, "\r\n'\\") . "]']; if ($first > f.selectedIndex) f.selectedIndex = $first;\"" : ""); - echo (count($functions) > 1 ? "<select name='function[$name]'>" . optionlist($functions, $function) . "</select>" : (strlen($functions[0]) ? h($functions[0]) : " ")) . '<td>'; + echo (count($functions) > 1 ? "<select name='function[$name]'>" . optionlist($functions, $function) . "</select>" : nbsp($functions[0])) . '<td>'; $input = $adminer->editInput($_GET["edit"], $field, " name='fields[$name]'$onchange", $value); // usage in call is without a table if (strlen($input)) { echo $input; Modified: trunk/adminer/processlist.inc.php =================================================================== --- trunk/adminer/processlist.inc.php 2009-08-25 10:25:56 UTC (rev 1003) +++ trunk/adminer/processlist.inc.php 2009-08-25 10:26:47 UTC (rev 1004) @@ -20,7 +20,7 @@ if (!$i) { echo "<thead><tr lang='en'><th> <th>" . implode("<th>", array_keys($row)) . "</thead>\n"; } - echo "<tr" . odd() . "><td><input type='checkbox' name='kill[]' value='$row[Id]'><td>" . implode("<td>", $row) . "\n"; + echo "<tr" . odd() . "><td><input type='checkbox' name='kill[]' value='$row[Id]'><td>" . implode("<td>", array_map('nbsp', $row)) . "\n"; } $result->free(); ?> Modified: trunk/adminer/table.inc.php =================================================================== --- trunk/adminer/table.inc.php 2009-08-25 10:25:56 UTC (rev 1003) +++ trunk/adminer/table.inc.php 2009-08-25 10:26:47 UTC (rev 1004) @@ -14,7 +14,7 @@ while ($row = $result->fetch_assoc()) { echo "<tr><th>" . h($row["Field"]); echo "<td>" . h($row["Type"]) . ($row["Null"] == "YES" ? " <i>NULL</i>" : ""); - echo "<td>" . (strlen(trim($row["Comment"])) ? h($row["Comment"]) : " "); + echo "<td>" . nbsp($row["Comment"]); echo "\n"; } echo "</table>\n"; Modified: trunk/adminer/variables.inc.php =================================================================== --- trunk/adminer/variables.inc.php 2009-08-25 10:25:56 UTC (rev 1003) +++ trunk/adminer/variables.inc.php 2009-08-25 10:26:47 UTC (rev 1004) @@ -6,7 +6,7 @@ while ($row = $result->fetch_assoc()) { echo "<tr>"; echo "<th><code class='jush-sqlset'>" . h($row["Variable_name"]) . "</code>"; - echo "<td>" . (strlen(trim($row["Value"])) ? h($row["Value"]) : " "); + echo "<td>" . nbsp($row["Value"]); } $result->free(); echo "</table>\n"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-25 12:11:21
|
Revision: 1006 http://adminer.svn.sourceforge.net/adminer/?rev=1006&view=rev Author: jakubvrana Date: 2009-08-25 12:11:12 +0000 (Tue, 25 Aug 2009) Log Message: ----------- Always set time limit (fixes #2844071) Modified Paths: -------------- trunk/adminer/include/bootstrap.inc.php trunk/adminer/sql.inc.php Modified: trunk/adminer/include/bootstrap.inc.php =================================================================== --- trunk/adminer/include/bootstrap.inc.php 2009-08-25 10:27:27 UTC (rev 1005) +++ trunk/adminer/include/bootstrap.inc.php 2009-08-25 12:11:12 UTC (rev 1006) @@ -67,6 +67,7 @@ unset($process); } set_magic_quotes_runtime(false); +@set_time_limit(0); // @ - can be disabled define("ME", preg_replace('~^[^?]*/([^?]*).*~', '\\1', $_SERVER["REQUEST_URI"]) . '?' . (strlen($_GET["server"]) ? 'server=' . urlencode($_GET["server"]) . '&' : '') . (strlen($_GET["db"]) ? 'db=' . urlencode($_GET["db"]) . '&' : '')); $on_actions = array("RESTRICT", "CASCADE", "SET NULL", "NO ACTION"); // used in foreign_keys() Modified: trunk/adminer/sql.inc.php =================================================================== --- trunk/adminer/sql.inc.php 2009-08-25 10:27:27 UTC (rev 1005) +++ trunk/adminer/sql.inc.php 2009-08-25 12:11:12 UTC (rev 1006) @@ -10,7 +10,6 @@ if (!$error && $_POST) { $query = (isset($_POST["file"]) ? get_file("sql_file") : $_POST["query"]); if (is_string($query)) { // get_file() returns error as number - @set_time_limit(0); // set_time_limit() can be disabled $query = str_replace("\r", "", $query); // parser looks for \n $query = rtrim($query); if (strlen($query) && (!$history || end($history) != $query)) { // don't add repeated This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-25 15:42:54
|
Revision: 1014 http://adminer.svn.sourceforge.net/adminer/?rev=1014&view=rev Author: jakubvrana Date: 2009-08-25 15:42:43 +0000 (Tue, 25 Aug 2009) Log Message: ----------- Remove useless translations Modified Paths: -------------- trunk/adminer/include/adminer.inc.php trunk/adminer/include/editing.inc.php trunk/adminer/include/export.inc.php trunk/adminer/lang/cs.inc.php trunk/adminer/lang/de.inc.php trunk/adminer/lang/es.inc.php trunk/adminer/lang/et.inc.php trunk/adminer/lang/fr.inc.php trunk/adminer/lang/it.inc.php trunk/adminer/lang/nl.inc.php trunk/adminer/lang/ru.inc.php trunk/adminer/lang/sk.inc.php trunk/adminer/lang/zh-tw.inc.php trunk/adminer/lang/zh.inc.php trunk/adminer/schema.inc.php Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/include/adminer.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -8,7 +8,7 @@ * @return string */ function name() { - return lang('Adminer'); + return "Adminer"; } /** Connection parameters @@ -163,7 +163,7 @@ if ($index["type"] == "FULLTEXT") { echo "(<i>" . implode("</i>, <i>", array_map('h', $index["columns"])) . "</i>) AGAINST"; echo " <input name='fulltext[$i]' value='" . h($_GET["fulltext"][$i]) . "'>"; - echo "<label><input type='checkbox' name='boolean[$i]' value='1'" . (isset($_GET["boolean"][$i]) ? " checked" : "") . ">" . lang('BOOL') . "</label>"; + echo "<label><input type='checkbox' name='boolean[$i]' value='1'" . (isset($_GET["boolean"][$i]) ? " checked" : "") . ">BOOL</label>"; echo "<br>\n"; } } Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/include/editing.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -65,13 +65,13 @@ } ?> <thead><tr> -<?php if ($type == "PROCEDURE") { ?><td><?php echo lang('IN-OUT'); ?><?php } ?> +<?php if ($type == "PROCEDURE") { ?><td> <?php } ?> <th><?php echo ($type == "TABLE" ? lang('Column name') : lang('Parameter name')); ?> <td><?php echo lang('Type'); ?> <td><?php echo lang('Length'); ?> <td><?php echo lang('Options'); ?> <?php if ($type == "TABLE") { ?> -<td><?php echo lang('NULL'); ?> +<td>NULL <td><input type="radio" name="auto_increment_col" value=""><?php echo lang('Auto Increment'); ?> <td class="hidden"><?php echo lang('Default values'); ?> <td<?php echo ($column_comments ? "" : " class='hidden'"); ?>><?php echo lang('Comment'); ?> Modified: trunk/adminer/include/export.inc.php =================================================================== --- trunk/adminer/include/export.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/include/export.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -158,5 +158,6 @@ } $dump_output = "<select name='output'>" . optionlist(array('text' => lang('open'), 'file' => lang('save'))) . "</select>" - . " <select name='format'>" . optionlist(array('sql' => 'SQL', 'csv' => 'CSV')) . "</select>"; + . " <select name='format'>" . optionlist(array('sql' => 'SQL', 'csv' => 'CSV')) . "</select>" +; $max_packet = 1048576; // default, minimum is 1024 Modified: trunk/adminer/lang/cs.inc.php =================================================================== --- trunk/adminer/lang/cs.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/cs.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Přihlásit se', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Odhlášení proběhlo v pořádku.', 'Invalid credentials.' => 'Neplatné přihlašovací údaje.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Název sloupce', 'Type' => 'Typ', 'Length' => 'Délka', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto Increment', 'Options' => 'Volby', 'Save' => 'Uložit', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Neplatný token CSRF. Odešlete formulář znovu.', 'Comment' => 'Komentář', 'Default values' => 'Výchozí hodnoty', - 'BOOL' => 'BOOL', 'Show column comments' => 'Zobrazit komentáře sloupců', '%d byte(s)' => array('%d bajt', '%d bajty', '%d bajtů'), 'No commands to execute.' => 'Žádné příkazy k vykonání.', @@ -111,7 +108,6 @@ 'Process list' => 'Seznam procesů', '%d process(es) have been killed.' => array('Byl ukončen %d proces.', 'Byly ukončeny %d procesy.', 'Bylo ukončeno %d procesů.'), 'Kill' => 'Ukončit', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Název parametru', 'Database schema' => 'Schéma databáze', 'Create procedure' => 'Vytvořit proceduru', Modified: trunk/adminer/lang/de.inc.php =================================================================== --- trunk/adminer/lang/de.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/de.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Login', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Abmeldung erfolgreich.', 'Invalid credentials.' => 'Ungültige Anmelde-Informationen.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Spaltenname', 'Type' => 'Typ', 'Length' => 'Länge', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto-Inkrement', 'Options' => 'Optionen', 'Save' => 'Speichern', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'CSRF Token ungültig. Bitte die Formulardaten erneut abschicken.', 'Comment' => 'Kommentar', 'Default values' => 'Vorgabewerte festlegen', - 'BOOL' => 'BOOL', 'Show column comments' => 'Spaltenkommentare zeigen', '%d byte(s)' => array('%d Byte', '%d Bytes'), 'No commands to execute.' => 'Kein Kommando vorhanden.', @@ -111,7 +108,6 @@ 'Process list' => 'Prozessliste', '%d process(es) have been killed.' => array('%d Prozess gestoppt.', '%d Prozesse gestoppt.'), 'Kill' => 'Anhalten', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Name des Parameters', 'Database schema' => 'Datenbankschema', 'Create procedure' => 'Neue Prozedur', Modified: trunk/adminer/lang/es.inc.php =================================================================== --- trunk/adminer/lang/es.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/es.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Login', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Salida exitosa.', 'Invalid credentials.' => 'Autenticación fallada.', 'Server' => 'Servidor', @@ -20,7 +19,6 @@ 'Column name' => 'Nombre de columna', 'Type' => 'Tipo', 'Length' => 'Longitud', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto increment', 'Options' => 'Opciones', 'Save' => 'Guardar', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Token CSRF inválido. Vuelva a enviar los datos del formulario.', 'Comment' => 'Comentario', 'Default values' => 'Valores predeterminados', - 'BOOL' => 'BOOL', 'Show column comments' => 'Mostrar comentario de columnas', '%d byte(s)' => array('%d byte', '%d bytes'), 'No commands to execute.' => 'No hay comando para ejecutar.', @@ -111,7 +108,6 @@ 'Process list' => 'Lista de procesos', '%d process(es) have been killed.' => array('%d proceso detenido.', '%d procesos detenidos.'), 'Kill' => 'Detener', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Nombre de Parametro', 'Database schema' => 'Esquema de base de datos', 'Create procedure' => 'Crear procedimiento', Modified: trunk/adminer/lang/et.inc.php =================================================================== --- trunk/adminer/lang/et.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/et.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Logi sisse', - 'Adminer' => 'Andmebaasi haldaja', 'Logout successful.' => 'Väljalogimine õnnestus.', 'Invalid credentials.' => 'Ebakorrektsed andmed.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Veeru nimi', 'Type' => 'Tüüp', 'Length' => 'Pikkus', - 'NULL' => 'NULL', 'Auto Increment' => 'Automaatselt suurenev', 'Options' => 'Valikud', 'Save' => 'Salvesta', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Sobimatu CSRF, palun postitage vorm uuesti.', 'Comment' => 'Kommentaar', 'Default values' => 'Vaikimisi väärtused', - 'BOOL' => 'Jah/Ei (BOOL)', 'Show column comments' => 'Kuva veeru kommentaarid', '%d byte(s)' => array('%d bait', '%d baiti'), 'No commands to execute.' => 'Käsk puudub.', @@ -111,7 +108,6 @@ 'Process list' => 'Protsesside nimekiri', '%d process(es) have been killed.' => array('Protsess on edukalt peatatud (%d).', 'Valitud protsessid (%d) on edukalt peatatud.'), 'Kill' => 'Peata', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Parameetri nimi', 'Database schema' => 'Andmebaasi skeem', 'Create procedure' => 'Loo uus protseduur', Modified: trunk/adminer/lang/fr.inc.php =================================================================== --- trunk/adminer/lang/fr.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/fr.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Authentification', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Aurevoir!', 'Invalid credentials.' => 'Authentification échouée', 'Server' => 'Serveur', @@ -20,7 +19,6 @@ 'Column name' => 'Nom de la colonne', 'Type' => 'Type', 'Length' => 'Longeur', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto increment', 'Options' => 'Options', 'Save' => 'Sauvegarder', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Token CSRF invalide. Veuillez réenvoyer le formulaire.', 'Comment' => 'Commentaire', 'Default values' => 'Valeurs par défaut', - 'BOOL' => 'BOOL', 'Show column comments' => 'Voir les commentaires sur les colonnes', '%d byte(s)' => array('%d octet', '%d octets'), 'No commands to execute.' => 'Aucune commande à exécuter.', @@ -111,7 +108,6 @@ 'Process list' => 'Liste de processus', '%d process(es) have been killed.' => array('%d processus arrêté.', '%d processus arrêtés.'), 'Kill' => 'Arrêter', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Nom du Paramêtre', 'Database schema' => 'Schéma de la base de données', 'Create procedure' => 'Créer une procédure', Modified: trunk/adminer/lang/it.inc.php =================================================================== --- trunk/adminer/lang/it.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/it.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Autenticazione', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Uscita effettuata con successo.', 'Invalid credentials.' => 'Credenziali non valide.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Nome colonna', 'Type' => 'Tipo', 'Length' => 'Lunghezza', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto incremento', 'Options' => 'Opzioni', 'Save' => 'Salva', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Token CSRF non valido. Reinvia la richiesta.', 'Comment' => 'Commento', 'Default values' => 'Valori predefiniti', - 'BOOL' => 'BOOL', 'Show column comments' => 'Mostra i commenti delle colonne', '%d byte(s)' => array('%d byte', '%d bytes'), 'No commands to execute.' => 'Nessun commando da eseguire.', @@ -111,7 +108,6 @@ 'Process list' => 'Elenco processi', '%d process(es) have been killed.' => array('%d processo interrotto.', '%d processi interrotti.'), 'Kill' => 'Interrompi', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Nome parametro', 'Database schema' => 'Schema database', 'Create procedure' => 'Crea procedura', Modified: trunk/adminer/lang/nl.inc.php =================================================================== --- trunk/adminer/lang/nl.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/nl.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Inloggen', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Uitloggen geslaagd.', 'Invalid credentials.' => 'Ongeldige logingegevens.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Kolomnaam', 'Type' => 'Type', 'Length' => 'Lengte', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto nummering', 'Options' => 'Opties', 'Save' => 'Opslaan', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Ongeldig CSRF token. Verstuur het formulier opnieuw.', 'Comment' => 'Commentaar', 'Default values' => 'Standaard waarden', - 'BOOL' => 'BOOL', 'Show column comments' => 'Kolomcommentaar weergeven', '%d byte(s)' => array('%d byte', '%d bytes'), 'No commands to execute.' => 'Geen opdrachten uit te voeren.', @@ -111,7 +108,6 @@ 'Process list' => 'Proceslijst', '%d process(es) have been killed.' => array('%d proces gestopt.', '%d processen gestopt.'), 'Kill' => 'Stoppen', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Parameternaam', 'Database schema' => 'Database schema', 'Create procedure' => 'Procedure aanmaken', Modified: trunk/adminer/lang/ru.inc.php =================================================================== --- trunk/adminer/lang/ru.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/ru.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Войти', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Вы успешно покинули систему.', 'Invalid credentials.' => 'Неправильное имя пользователя или пароль.', 'Server' => 'Сервер', @@ -20,7 +19,6 @@ 'Column name' => 'Название поля', 'Type' => 'Тип', 'Length' => 'Длина', - 'NULL' => 'NULL', 'Auto Increment' => 'Автоматическое приращение', 'Options' => 'Действие', 'Save' => 'Сохранить', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Недействительный CSRF токен. Отправите форму ещё раз.', 'Comment' => 'Комментарий', 'Default values' => 'Значения по умолчанию', - 'BOOL' => 'Булев тип', 'Show column comments' => 'Показать комментарии к колонке', '%d byte(s)' => array('%d байт', '%d байта', '%d байтов'), 'No commands to execute.' => 'Нет команд для выполнения.', @@ -111,7 +108,6 @@ 'Process list' => 'Список процессов', '%d process(es) have been killed.' => array('Был завершен %d процесс.', 'Было завершено %d процесса.', 'Было завершёно %d процессов.'), 'Kill' => 'Завершить', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Название параметра', 'Database schema' => 'Схема базы данных', 'Create procedure' => 'Создать процедуру', Modified: trunk/adminer/lang/sk.inc.php =================================================================== --- trunk/adminer/lang/sk.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/sk.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => 'Prihlásiť sa', - 'Adminer' => 'Adminer', 'Logout successful.' => 'Odhlásenie prebehlo v poriadku.', 'Invalid credentials.' => 'Neplatné prihlasovacie údaje.', 'Server' => 'Server', @@ -20,7 +19,6 @@ 'Column name' => 'Názov stĺpca', 'Type' => 'Typ', 'Length' => 'Dĺžka', - 'NULL' => 'NULL', 'Auto Increment' => 'Auto Increment', 'Options' => 'Voľby', 'Save' => 'Uložiť', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => 'Neplatný token CSRF. Odošlite formulár znova.', 'Comment' => 'Komentár', 'Default values' => 'Východzie hodnoty', - 'BOOL' => 'BOOL', 'Show column comments' => 'Zobraziť komentáre stĺpcov', '%d byte(s)' => array('%d bajt', '%d bajty', '%d bajtov'), 'No commands to execute.' => 'Žiadne príkazy na vykonanie.', @@ -111,7 +108,6 @@ 'Process list' => 'Zoznam procesov', '%d process(es) have been killed.' => array('Bol ukončený %d proces.', 'Boli ukončené %d procesy.', 'Bolo ukončených %d procesov.'), 'Kill' => 'Ukončiť', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => 'Názov parametra', 'Database schema' => 'Schéma databázy', 'Create procedure' => 'Vytvoriť procedúru', Modified: trunk/adminer/lang/zh-tw.inc.php =================================================================== --- trunk/adminer/lang/zh-tw.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/zh-tw.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => '登入', - 'Adminer' => 'Adminer', 'Logout successful.' => '登出成功。', 'Invalid credentials.' => '無效的憑證。', 'Server' => '伺服器', @@ -20,7 +19,6 @@ 'Column name' => '列名', 'Type' => '類型', 'Length' => '長度', - 'NULL' => 'NULL', 'Auto Increment' => '自動增加', 'Options' => '選項', 'Save' => '儲存', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => '無效的 CSRF token。請重新發送表單。', 'Comment' => '註解', 'Default values' => '預設值', - 'BOOL' => 'BOOL', 'Show column comments' => '顯示列註解', '%d byte(s)' => '%d byte(s)', 'No commands to execute.' => '沒有命令可執行。', @@ -111,7 +108,6 @@ 'Process list' => '進程列表', '%d process(es) have been killed.' => '%d 個 Process(es) 被終止', 'Kill' => '終止', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => '參數名稱', 'Database schema' => '資料庫架構', 'Create procedure' => '建立預存程序', Modified: trunk/adminer/lang/zh.inc.php =================================================================== --- trunk/adminer/lang/zh.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/lang/zh.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -1,7 +1,6 @@ <?php $translations = array( 'Login' => '登录', - 'Adminer' => 'Adminer', 'Logout successful.' => '注销成功。', 'Invalid credentials.' => '无效凭据。', 'Server' => '服务器', @@ -20,7 +19,6 @@ 'Column name' => '列名', 'Type' => '类型', 'Length' => '长度', - 'NULL' => 'NULL', 'Auto Increment' => '自动增量', 'Options' => '选项', 'Save' => '保存', @@ -73,7 +71,6 @@ 'Invalid CSRF token. Send the form again.' => '无效 CSRF 令牌。重新发送表单。', 'Comment' => '注释', 'Default values' => '默认值', - 'BOOL' => 'BOOL', 'Show column comments' => '显示列注释', '%d byte(s)' => '%d 字节', 'No commands to execute.' => '没有命令执行。', @@ -111,7 +108,6 @@ 'Process list' => '进程列表', '%d process(es) have been killed.' => '%d 个进程被终止', 'Kill' => '终止', - 'IN-OUT' => 'IN-OUT', 'Parameter name' => '参数名', 'Database schema' => '数据库概要', 'Create procedure' => '创建过程', Modified: trunk/adminer/schema.inc.php =================================================================== --- trunk/adminer/schema.inc.php 2009-08-25 15:23:44 UTC (rev 1013) +++ trunk/adminer/schema.inc.php 2009-08-25 15:42:43 UTC (rev 1014) @@ -62,7 +62,7 @@ echo "<div class='table' style='top: " . $table["pos"][0] . "em; left: " . $table["pos"][1] . "em;' onmousedown='schema_mousedown(this, event);'>"; echo '<a href="' . h(ME) . 'table=' . urlencode($name) . '"><strong>' . h($name) . "</strong></a><br>\n"; foreach ($table["fields"] as $field) { - $val = '<span' . type_class($field["type"]) . ' title="' . h($field["full_type"] . ($field["null"] ? " " . lang('NULL') : '')) . '">' . h($field["field"]) . '</span>'; + $val = '<span' . type_class($field["type"]) . ' title="' . h($field["full_type"] . ($field["null"] ? " NULL" : '')) . '">' . h($field["field"]) . '</span>'; echo ($field["primary"] ? "<em>$val</em>" : $val) . "<br>\n"; } foreach ((array) $table["references"] as $target_name => $refs) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-28 13:17:03
|
Revision: 1033 http://adminer.svn.sourceforge.net/adminer/?rev=1033&view=rev Author: jakubvrana Date: 2009-08-28 13:16:54 +0000 (Fri, 28 Aug 2009) Log Message: ----------- Optimize export speed Modified Paths: -------------- trunk/adminer/dump.inc.php trunk/adminer/include/export.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/dump.inc.php =================================================================== --- trunk/adminer/dump.inc.php 2009-08-28 11:49:57 UTC (rev 1032) +++ trunk/adminer/dump.inc.php 2009-08-28 13:16:54 UTC (rev 1033) @@ -146,7 +146,6 @@ } } } - dump(); exit; } Modified: trunk/adminer/include/export.inc.php =================================================================== --- trunk/adminer/include/export.inc.php 2009-08-28 11:49:57 UTC (rev 1032) +++ trunk/adminer/include/export.inc.php 2009-08-28 13:16:54 UTC (rev 1033) @@ -1,5 +1,5 @@ <?php -//! memory consumption, speed +//! memory consumption function dump_table($table, $style, $is_view = false) { global $dbh; @@ -103,12 +103,15 @@ $result = $dbh->query(($select ? $select : "SELECT * FROM " . idf_escape($table))); //! enum and set as numbers, microtime if ($result) { $fields = fields($table); - $length = 0; + $insert = ""; + $buffer = ""; while ($row = $result->fetch_assoc()) { if ($_POST["format"] == "csv") { dump_csv($row); } else { - $insert = "INSERT INTO " . idf_escape($table) . " (" . implode(", ", array_map('idf_escape', array_keys($row))) . ") VALUES"; + if (!$insert) { + $insert = "INSERT INTO " . idf_escape($table) . " (" . implode(", ", array_map('idf_escape', array_keys($row))) . ") VALUES"; + } $row2 = array(); foreach ($row as $key => $val) { $row2[$key] = (isset($val) ? (ereg('int|float|double|decimal', $fields[$key]["type"]) ? $val : $dbh->quote($val)) : "NULL"); //! columns looking like functions @@ -122,23 +125,21 @@ dump("$insert ($s) ON DUPLICATE KEY UPDATE " . implode(", ", $set) . ";\n"); } else { $s = "\n($s)"; - if (!$length) { - dump($insert . $s); - $length = strlen($insert) + strlen($s); + if (!$buffer) { + $buffer = $insert . $s; } else { - $length += 1 + strlen($s); // 1 - separator length - if ($length < $max_packet) { - dump(",$s"); + if (strlen($buffer) + 1 + strlen($s) < $max_packet) { // 1 - separator length + $buffer .= ",$s"; } else { - dump(";\n$insert$s"); - $length = strlen($insert) + strlen($s); + dump("$buffer;\n"); + $buffer = $insert . $s; } } } } } - if ($_POST["format"] != "csv" && $style != "INSERT+UPDATE" && $result->num_rows) { - dump(";\n"); + if ($_POST["format"] != "csv" && $style != "INSERT+UPDATE" && $buffer) { + dump("$buffer;\n"); } } } @@ -151,8 +152,6 @@ if ($_POST["output"] == "file" || $_POST["compress"]) { header("Content-Disposition: attachment; filename=$filename.$ext" . ($_POST["compress"] == "gz" ? ".gz" : "")); } - ob_flush(); - flush(); return $ext; } Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-08-28 11:49:57 UTC (rev 1032) +++ trunk/adminer/include/functions.inc.php 2009-08-28 13:16:54 UTC (rev 1033) @@ -360,14 +360,9 @@ } } -function dump($string = null) { // null $string forces sending of buffer - static $buffer = ""; +function dump($string) { if ($_POST["compress"] == "gz") { - $buffer .= $string; - if (!isset($string) || strlen($buffer) > 1e6) { - echo gzencode($buffer); - $buffer = ""; - } + echo gzencode($string); } else { echo $string; } Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-08-28 11:49:57 UTC (rev 1032) +++ trunk/adminer/select.inc.php 2009-08-28 13:16:54 UTC (rev 1033) @@ -48,7 +48,6 @@ } dump_data($_GET["select"], "INSERT", implode(" UNION ALL ", $union)); } - dump(); exit; } if (!$adminer->selectEmailProcess($where)) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-28 14:44:51
|
Revision: 1036 http://adminer.svn.sourceforge.net/adminer/?rev=1036&view=rev Author: jakubvrana Date: 2009-08-28 14:44:43 +0000 (Fri, 28 Aug 2009) Log Message: ----------- Bzip2 compression Modified Paths: -------------- trunk/adminer/dump.inc.php trunk/adminer/include/export.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/dump.inc.php =================================================================== --- trunk/adminer/dump.inc.php 2009-08-28 14:16:44 UTC (rev 1035) +++ trunk/adminer/dump.inc.php 2009-08-28 14:44:43 UTC (rev 1036) @@ -146,6 +146,7 @@ } } } + dump(); exit; } @@ -164,7 +165,7 @@ } echo "<tr><th>" . lang('Output') . "<td><input type='hidden' name='token' value='$token'>$dump_output\n"; // token is not needed but checked in bootstrap for all POST data echo "<tr><th>" . lang('Format') . "<td>$dump_format\n"; -echo "<tr><th>" . lang('Compression') . "<td>" . ($dump_compress ? $dump_compress : lang('None of the supported PHP extensions (%s) are available.', 'zlib')) . "\n"; +echo "<tr><th>" . lang('Compression') . "<td>" . ($dump_compress ? $dump_compress : lang('None of the supported PHP extensions (%s) are available.', 'zlib, bz2')) . "\n"; echo "<tr><th>" . lang('Database') . "<td><select name='db_style'>" . optionlist($db_style, (strlen($_GET["db"]) ? '' : 'CREATE')) . "</select>\n"; echo "<tr><th>" . lang('Tables') . "<td><select name='table_style'>" . optionlist($table_style, 'DROP+CREATE') . "</select>\n"; echo "<tr><th>" . lang('Data') . "<td><select name='data_style'>" . optionlist($data_style, 'INSERT') . "</select>\n"; Modified: trunk/adminer/include/export.inc.php =================================================================== --- trunk/adminer/include/export.inc.php 2009-08-28 14:16:44 UTC (rev 1035) +++ trunk/adminer/include/export.inc.php 2009-08-28 14:44:43 UTC (rev 1036) @@ -127,39 +127,47 @@ $s = "\n($s)"; if (!$buffer) { $buffer = $insert . $s; + } elseif (strlen($buffer) + 1 + strlen($s) < $max_packet) { // 1 - separator length + $buffer .= ",$s"; } else { - if (strlen($buffer) + 1 + strlen($s) < $max_packet) { // 1 - separator length - $buffer .= ",$s"; - } else { - dump("$buffer;\n"); - $buffer = $insert . $s; - } + $buffer .= ";\n"; + dump($buffer); + $buffer = $insert . $s; } } } } if ($_POST["format"] != "csv" && $style != "INSERT+UPDATE" && $buffer) { - dump("$buffer;\n"); + $buffer .= ";\n"; + dump($buffer); } } } } function dump_headers($identifier, $multi_table = false) { + $compress = $_POST["compress"]; $filename = (strlen($identifier) ? friendly_url($identifier) : "dump"); $ext = ($_POST["format"] == "sql" ? "sql" : ($multi_table ? "tar" : "csv")); // multiple CSV packed to TAR - header("Content-Type: " . ($_POST["compress"] == "gz" ? "application/x-gzip" : ($ext == "tar" ? "application/x-tar" : ($ext == "sql" || $_POST["output"] != "file" ? "text/plain" : "text/csv")) . "; charset=utf-8")); - if ($_POST["output"] == "file" || $_POST["compress"]) { - header("Content-Disposition: attachment; filename=$filename.$ext" . ($_POST["compress"] == "gz" ? ".gz" : "")); + header("Content-Type: " . + ($compress == "bz2" ? "application/x-bzip" : + ($compress == "gz" ? "application/x-gzip" : + ($ext == "tar" ? "application/x-tar" : + ($ext == "sql" || $_POST["output"] != "file" ? "text/plain" : "text/csv") . "; charset=utf-8" + )))); + if ($_POST["output"] == "file" || $compress) { + header("Content-Disposition: attachment; filename=$filename.$ext" . (ereg('[0-9a-z]', $compress) ? ".$compress" : "")); } return $ext; } $compress = array(); if (function_exists('gzencode')) { - $compress['gz'] = 'GZIP'; + $compress['gz'] = 'gzip'; } -// bzcompress can't be called repetitively, bzopen requires temporary file +if (function_exists('bzcompress')) { + $compress['bz2'] = 'bzip2'; +} // ZipArchive requires temporary file, ZIP can be created by gzcompress - see PEAR File_Archive $dump_output = "<select name='output'>" . optionlist(array('text' => lang('open'), 'file' => lang('save'))) . "</select>"; $dump_format = "<select name='format'>" . optionlist(array('sql' => 'SQL', 'csv' => 'CSV')) . "</select>"; Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-08-28 14:16:44 UTC (rev 1035) +++ trunk/adminer/include/functions.inc.php 2009-08-28 14:44:43 UTC (rev 1036) @@ -360,9 +360,18 @@ } } -function dump($string) { - if ($_POST["compress"] == "gz") { - echo gzencode($string); +function dump($string = null) { // null $string forces sending of buffer + static $buffer = ""; // used to improve compression and to allow GZ archives unpackable in Total Commander + if ($_POST["compress"]) { + $buffer .= $string; + if (!isset($string) || strlen($buffer) > 1e6) { + if ($_POST["compress"] == "bz2") { + echo bzcompress($buffer); // should not be called repeatedly but it would require whole buffer in memory or temporary file + } else { + echo gzencode($buffer); + } + $buffer = ""; + } } else { echo $string; } Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-08-28 14:16:44 UTC (rev 1035) +++ trunk/adminer/select.inc.php 2009-08-28 14:44:43 UTC (rev 1036) @@ -48,6 +48,7 @@ } dump_data($_GET["select"], "INSERT", implode(" UNION ALL ", $union)); } + dump(); exit; } if (!$adminer->selectEmailProcess($where)) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-29 13:50:34
|
Revision: 1041 http://adminer.svn.sourceforge.net/adminer/?rev=1041&view=rev Author: jakubvrana Date: 2009-08-29 13:50:28 +0000 (Sat, 29 Aug 2009) Log Message: ----------- Bzip2 import Modified Paths: -------------- trunk/adminer/include/functions.inc.php trunk/adminer/sql.inc.php Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-08-28 16:28:39 UTC (rev 1040) +++ trunk/adminer/include/functions.inc.php 2009-08-29 13:50:28 UTC (rev 1041) @@ -166,7 +166,10 @@ if (!$file || $file["error"]) { return $file["error"]; } - return file_get_contents($decompress && ereg('\\.gz$', $file["name"]) ? "compress.zlib://$file[tmp_name]" : $file["tmp_name"]); //! may not be reachable because of open_basedir + return file_get_contents($decompress && ereg('\\.gz$', $file["name"]) ? "compress.zlib://$file[tmp_name]" + : ($decompress && ereg('\\.bz2$', $file["name"]) ? "compress.bzip2://$file[tmp_name]" + : $file["tmp_name"] + )); //! may not be reachable because of open_basedir } function upload_error($error) { Modified: trunk/adminer/sql.inc.php =================================================================== --- trunk/adminer/sql.inc.php 2009-08-28 16:28:39 UTC (rev 1040) +++ trunk/adminer/sql.inc.php 2009-08-29 13:50:28 UTC (rev 1041) @@ -10,7 +10,10 @@ if (!$error && $_POST) { $query = $_POST["query"]; if ($_POST["webfile"]) { - $query = @file_get_contents(file_exists("adminer.sql") ? "adminer.sql" : "compress.zlib://adminer.sql.gz"); + $query = @file_get_contents(file_exists("adminer.sql") ? "adminer.sql" + : (file_exists("adminer.sql.gz") ? "compress.zlib://adminer.sql.gz" + : "compress.bzip2://adminer.sql.bz2" + )); } elseif ($_POST["file"]) { $query = get_file("sql_file", true); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-08-30 22:21:45
|
Revision: 1050 http://adminer.svn.sourceforge.net/adminer/?rev=1050&view=rev Author: jakubvrana Date: 2009-08-30 22:21:36 +0000 (Sun, 30 Aug 2009) Log Message: ----------- Disable session.use_trans_sid to preserve export result Do not depend on session.use_trans_sid without cookies Modified Paths: -------------- trunk/adminer/include/adminer.inc.php trunk/adminer/include/auth.inc.php trunk/adminer/include/bootstrap.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/privileges.inc.php Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-08-30 21:22:05 UTC (rev 1049) +++ trunk/adminer/include/adminer.inc.php 2009-08-30 22:21:36 UTC (rev 1050) @@ -425,7 +425,9 @@ </p> </form> <form action=""> -<p><?php if (strlen($_GET["server"])) { ?><input type="hidden" name="server" value="<?php echo h($_GET["server"]); ?>"><?php } ?> +<p> +<?php if (SID) { ?><input type="hidden" name="<?php echo session_name(); ?>" value="<?php echo h(session_id()); ?>"><?php } ?> +<?php if (strlen($_GET["server"])) { ?><input type="hidden" name="server" value="<?php echo h($_GET["server"]); ?>"><?php } ?> <?php if ($databases) { ?> <select name="db" onchange="this.form.submit();"><option value="">(<?php echo lang('database'); ?>)<?php echo optionlist($databases, DB); ?></select> <?php } else { ?> Modified: trunk/adminer/include/auth.inc.php =================================================================== --- trunk/adminer/include/auth.inc.php 2009-08-30 21:22:05 UTC (rev 1049) +++ trunk/adminer/include/auth.inc.php 2009-08-30 22:21:36 UTC (rev 1050) @@ -1,27 +1,22 @@ <?php $ignore = array("server", "username", "password"); $session_name = session_name(); -if (ini_get("session.use_trans_sid") && isset($_POST[$session_name])) { - $ignore[] = $session_name; -} if (isset($_POST["server"])) { - if (isset($_COOKIE[$session_name]) || isset($_POST[$session_name])) { - session_regenerate_id(); // defense against session fixation - $_SESSION["usernames"][$_POST["server"]] = $_POST["username"]; - $_SESSION["passwords"][$_POST["server"]] = $_POST["password"]; - $_SESSION["tokens"][$_POST["server"]] = rand(1, 1e6); // defense against cross-site request forgery - if (count($_POST) == count($ignore)) { - $location = ((string) $_GET["server"] === $_POST["server"] ? remove_from_uri() : preg_replace('~^[^?]*/([^?]*).*~', '\\1', $_SERVER["REQUEST_URI"]) . (strlen($_POST["server"]) ? '?server=' . urlencode($_POST["server"]) : '')); - if (!isset($_COOKIE[$session_name])) { - $location .= (strpos($location, "?") === false ? "?" : "&") . SID; - } - header("Location: " . (strlen($location) ? $location : ".")); - exit; + session_regenerate_id(); // defense against session fixation + $_SESSION["usernames"][$_POST["server"]] = $_POST["username"]; + $_SESSION["passwords"][$_POST["server"]] = $_POST["password"]; + $_SESSION["tokens"][$_POST["server"]] = rand(1, 1e6); // defense against cross-site request forgery + if (count($_POST) == count($ignore)) { + $location = ((string) $_GET["server"] === $_POST["server"] ? remove_from_uri() : preg_replace('~^[^?]*/([^?]*).*~', '\\1', $_SERVER["REQUEST_URI"]) . (strlen($_POST["server"]) ? '?server=' . urlencode($_POST["server"]) : '')); + if (!isset($_COOKIE[$session_name])) { + $location .= (strpos($location, "?") === false ? "?" : "&") . SID; } - if ($_POST["token"]) { - $_POST["token"] = $_SESSION["tokens"][$_POST["server"]]; - } + header("Location: " . (strlen($location) ? $location : ".")); + exit; } + if ($_POST["token"]) { + $_POST["token"] = $_SESSION["tokens"][$_POST["server"]]; + } $_GET["server"] = $_POST["server"]; } elseif (isset($_POST["logout"])) { if ($_POST["token"] != $_SESSION["tokens"][$_GET["server"]]) { Modified: trunk/adminer/include/bootstrap.inc.php =================================================================== --- trunk/adminer/include/bootstrap.inc.php 2009-08-30 21:22:05 UTC (rev 1049) +++ trunk/adminer/include/bootstrap.inc.php 2009-08-30 22:21:36 UTC (rev 1050) @@ -45,6 +45,7 @@ if (!ini_get("session.auto_start")) { // use specific session name to get own namespace + @ini_set("session.use_trans_sid", false); // @ - may be disabled session_name("adminer_sid"); session_set_cookie_params(0, preg_replace('~\\?.*~', '', $_SERVER["REQUEST_URI"])); //! use HttpOnly in PHP 5 session_start(); @@ -70,7 +71,7 @@ @set_time_limit(0); // @ - can be disabled define("DB", $_GET["db"]); // for the sake of speed and size -define("ME", preg_replace('~^[^?]*/([^?]*).*~', '\\1', $_SERVER["REQUEST_URI"]) . '?' . (strlen($_GET["server"]) ? 'server=' . urlencode($_GET["server"]) . '&' : '') . (strlen(DB) ? 'db=' . urlencode(DB) . '&' : '')); +define("ME", preg_replace('~^[^?]*/([^?]*).*~', '\\1', $_SERVER["REQUEST_URI"]) . '?' . (SID ? SID . '&' : '') . (strlen($_GET["server"]) ? 'server=' . urlencode($_GET["server"]) . '&' : '') . (strlen(DB) ? 'db=' . urlencode(DB) . '&' : '')); $on_actions = array("RESTRICT", "CASCADE", "SET NULL", "NO ACTION"); // used in foreign_keys() include "../adminer/include/version.inc.php"; Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-08-30 21:22:05 UTC (rev 1049) +++ trunk/adminer/include/functions.inc.php 2009-08-30 22:21:36 UTC (rev 1050) @@ -104,10 +104,6 @@ if (isset($message)) { $_SESSION["messages"][] = $message; } - if (strlen(SID)) { - // append SID if session cookies are disabled - $location .= (strpos($location, "?") === false ? "?" : "&") . SID; - } header("Location: " . (strlen($location) ? $location : ".")); exit; } Modified: trunk/adminer/privileges.inc.php =================================================================== --- trunk/adminer/privileges.inc.php 2009-08-30 21:22:05 UTC (rev 1049) +++ trunk/adminer/privileges.inc.php 2009-08-30 22:21:36 UTC (rev 1050) @@ -6,6 +6,7 @@ if (!$result) { ?> <form action=""><p> + <?php if (SID) { ?><input type="hidden" name="<?php echo session_name(); ?>" value="<?php echo h(session_id()); ?>"><?php } ?> <?php if (strlen($_GET["server"])) { ?><input type="hidden" name="server" value="<?php echo h($_GET["server"]); ?>"><?php } ?> <?php echo lang('Username'); ?>: <input name="user"> <?php echo lang('Server'); ?>: <input name="host" value="localhost"> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-02 13:58:53
|
Revision: 1060 http://adminer.svn.sourceforge.net/adminer/?rev=1060&view=rev Author: jakubvrana Date: 2009-09-02 13:58:45 +0000 (Wed, 02 Sep 2009) Log Message: ----------- Separate "post_max_size" from translations Modified Paths: -------------- trunk/adminer/include/bootstrap.inc.php trunk/adminer/lang/cs.inc.php trunk/adminer/lang/de.inc.php trunk/adminer/lang/es.inc.php trunk/adminer/lang/et.inc.php trunk/adminer/lang/fr.inc.php trunk/adminer/lang/it.inc.php trunk/adminer/lang/nl.inc.php trunk/adminer/lang/ru.inc.php trunk/adminer/lang/sk.inc.php trunk/adminer/lang/zh-tw.inc.php trunk/adminer/lang/zh.inc.php Modified: trunk/adminer/include/bootstrap.inc.php =================================================================== --- trunk/adminer/include/bootstrap.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/include/bootstrap.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -95,5 +95,5 @@ $token = $_SESSION["tokens"][$_GET["server"]]; $error = ($_POST ? ($_POST["token"] == $token ? "" : lang('Invalid CSRF token. Send the form again.')) - : ($_SERVER["REQUEST_METHOD"] != "POST" ? "" : lang('Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.')) // posted form with no data means that post_max_size exceeded because Adminer always sends token at least + : ($_SERVER["REQUEST_METHOD"] != "POST" ? "" : lang('Too big POST data. Reduce the data or increase the %s configuration directive.', '"post_max_size"')) // posted form with no data means that post_max_size exceeded because Adminer always sends token at least ); Modified: trunk/adminer/lang/cs.inc.php =================================================================== --- trunk/adminer/lang/cs.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/cs.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Procedura', 'Grant' => 'Povolit', 'Revoke' => 'Zakázat', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'Příliš velká POST data. Zmenšete data nebo zvyšte hodnotu konfigurační direktivy "post_max_size".', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Příliš velká POST data. Zmenšete data nebo zvyšte hodnotu konfigurační direktivy %s.', 'Logged as: %s' => 'Přihlášen jako: %s', 'Move up' => 'Přesunout nahoru', 'Move down' => 'Přesunout dolů', Modified: trunk/adminer/lang/de.inc.php =================================================================== --- trunk/adminer/lang/de.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/de.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Rutine', 'Grant' => 'Erlauben', 'Revoke' => 'Verbieten', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'POST data zu gross. Reduzieren Sie die Grösse oder vergrössern Sie den Wert "post_max_size" in der Konfiguration.', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'POST data zu gross. Reduzieren Sie die Grösse oder vergrössern Sie den Wert %s in der Konfiguration.', 'Logged as: %s' => 'Angemeldet als: %s', 'Move up' => 'Nach oben', 'Move down' => 'Nach unten', Modified: trunk/adminer/lang/es.inc.php =================================================================== --- trunk/adminer/lang/es.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/es.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Rutina', 'Grant' => 'Conceder', 'Revoke' => 'Impedir', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'POST data demasiado grande. Reduzca el tamaño o aumente la directiva de configuración "post_max_size".', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'POST data demasiado grande. Reduzca el tamaño o aumente la directiva de configuración %s.', 'Logged as: %s' => 'Logeado como: %s', 'Move up' => 'Mover arriba', 'Move down' => 'Mover abajo', Modified: trunk/adminer/lang/et.inc.php =================================================================== --- trunk/adminer/lang/et.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/et.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -142,7 +142,7 @@ 'Revoke' => 'Eemalda', 'MySQL version: %s through PHP extension %s' => 'MySQL versioon: %s, kasutatud PHP moodul: %s', 'Logged as: %s' => 'Sisse logitud: %s', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'POST-andmete maht on liialt suur. Palun vähendage andmeid või suurendage "post_max_size" php-seadet.', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'POST-andmete maht on liialt suur. Palun vähendage andmeid või suurendage %s php-seadet.', 'Move up' => 'Liiguta ülespoole', 'Move down' => 'Liiguta allapoole', 'Export' => 'Ekspordi', Modified: trunk/adminer/lang/fr.inc.php =================================================================== --- trunk/adminer/lang/fr.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/fr.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -142,7 +142,7 @@ 'Revoke' => 'Revoke', 'MySQL version: %s through PHP extension %s' => 'Version de MySQL: %s utilisant l\'extension %s', 'Logged as: %s' => 'Authentifié en tant que %s', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'Donnée POST trop grande . Réduire la taille des données ou modifier le "post_max_size" dans la configuration de PHP.', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Donnée POST trop grande . Réduire la taille des données ou modifier le %s dans la configuration de PHP.', 'Move up' => 'Déplacer vers le haut', 'Move down' => 'Déplacer vers le bas', 'Export' => 'Exporter', Modified: trunk/adminer/lang/it.inc.php =================================================================== --- trunk/adminer/lang/it.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/it.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Routine', 'Grant' => 'Permetti', 'Revoke' => 'Revoca', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'Troppi dati via POST. Ridurre i dati o aumentare la direttiva di configurazione "post_max_size".', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Troppi dati via POST. Ridurre i dati o aumentare la direttiva di configurazione %s.', 'Logged as: %s' => 'Autenticato come: %s', 'Move up' => 'Sposta su', 'Move down' => 'Sposta giu', Modified: trunk/adminer/lang/nl.inc.php =================================================================== --- trunk/adminer/lang/nl.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/nl.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -142,7 +142,7 @@ 'Grant' => 'Toekennen', 'Revoke' => 'Intrekken', 'Logged as: %s' => 'Aangemeld als: %s', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'POST-data is te groot. Verklein de hoeveelheid data of verhoog de "post_max_size" configuratie.', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'POST-data is te groot. Verklein de hoeveelheid data of verhoog de %s configuratie.', 'Move up' => 'Omhoog', 'Move down' => 'Omlaag', 'Export' => 'Exporteren', Modified: trunk/adminer/lang/ru.inc.php =================================================================== --- trunk/adminer/lang/ru.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/ru.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Процедура', 'Grant' => 'Позволить', 'Revoke' => 'Запретить', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'Слишком большой объем POST-данных. Пошлите меньший объем данных или увеличьте параметр конфигурационной директивы "post_max_size".', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Слишком большой объем POST-данных. Пошлите меньший объем данных или увеличьте параметр конфигурационной директивы %s.', 'Logged as: %s' => 'Вы вошли как: %s', 'Move up' => 'Переместить вверх', 'Move down' => 'Переместить вниз', Modified: trunk/adminer/lang/sk.inc.php =================================================================== --- trunk/adminer/lang/sk.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/sk.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -141,7 +141,7 @@ 'Routine' => 'Procedúra', 'Grant' => 'Povoliť', 'Revoke' => 'Zakázať', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'Príliš veľké POST dáta. Zmenšite dáta alebo zvýšte hodnotu konfiguračej direktívy "post_max_size".', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'Príliš veľké POST dáta. Zmenšite dáta alebo zvýšte hodnotu konfiguračej direktívy %s.', 'Logged as: %s' => 'Prihlásený ako: %s', 'Move up' => 'Presunúť hore', 'Move down' => 'Presunúť dolu', Modified: trunk/adminer/lang/zh-tw.inc.php =================================================================== --- trunk/adminer/lang/zh-tw.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/zh-tw.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -142,7 +142,7 @@ 'Grant' => '授權', 'Revoke' => '廢除', 'Logged as: %s' => '登錄為:%s', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => 'POST 資料太大。減少資料或者增加 “post_max_size” 的設定值。', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => 'POST 資料太大。減少資料或者增加 %s 的設定值。', 'Move up' => '上移', 'Move down' => '下移', 'Export' => '匯出', Modified: trunk/adminer/lang/zh.inc.php =================================================================== --- trunk/adminer/lang/zh.inc.php 2009-09-02 13:54:20 UTC (rev 1059) +++ trunk/adminer/lang/zh.inc.php 2009-09-02 13:58:45 UTC (rev 1060) @@ -142,7 +142,7 @@ 'Grant' => '授权', 'Revoke' => '废除', 'Logged as: %s' => '登录为:%s', - 'Too big POST data. Reduce the data or increase the "post_max_size" configuration directive.' => '太大的 POST 数据。减少数据或者增加 “post_max_size” 配置命令。', + 'Too big POST data. Reduce the data or increase the %s configuration directive.' => '太大的 POST 数据。减少数据或者增加 %s 配置命令。', 'Move up' => '上移', 'Move down' => '下移', 'Export' => '导出', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-11 17:08:29
|
Revision: 1092 http://adminer.svn.sourceforge.net/adminer/?rev=1092&view=rev Author: jakubvrana Date: 2009-09-11 17:08:18 +0000 (Fri, 11 Sep 2009) Log Message: ----------- IE fixes Modified Paths: -------------- trunk/adminer/create.inc.php trunk/adminer/dump.inc.php trunk/adminer/editing.js trunk/adminer/foreign.inc.php trunk/adminer/include/adminer.inc.php trunk/adminer/sql.inc.php trunk/adminer/trigger.inc.php trunk/adminer/user.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/create.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -146,6 +146,7 @@ <select name="Engine"><option value="">(<?php echo lang('engine'); ?>)<?php echo optionlist($engines, $row["Engine"]); ?></select> <select name="Collation"><option value="">(<?php echo lang('collation'); ?>)<?php echo optionlist($collations, $row["Collation"]); ?></select> <input type="submit" value="<?php echo lang('Save'); ?>"> +</p> <table cellspacing="0" id="edit-fields"> <?php $column_comments = edit_fields($row["fields"], $collations, "TABLE", $suhosin, $foreign_keys); ?> </table> Modified: trunk/adminer/dump.inc.php =================================================================== --- trunk/adminer/dump.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/dump.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -149,7 +149,7 @@ echo "<tr><th>" . lang('Data') . "<td><select name='data_style'>" . optionlist($data_style, 'INSERT') . "</select>\n"; ?> </table> -<p><input type="submit" value="<?php echo lang('Export'); ?>"> +<p><input type="submit" value="<?php echo lang('Export'); ?>"></p> <table cellspacing="0"> <?php Modified: trunk/adminer/editing.js =================================================================== --- trunk/adminer/editing.js 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/editing.js 2009-09-11 17:08:18 UTC (rev 1092) @@ -19,6 +19,27 @@ +function select_value(select) { + return select.options[select.selectedIndex].text; +} + +function form_field(form, name) { + for (var i=0; i < form.length; i++) { + if (form[i].name == name) { + return form[i]; + } + } +} + +function type_password(el, disable) { + try { + el.type = (disable ? 'text' : 'password'); + } catch (e) { + } +} + + + var added = '.', row_count; function re_escape(s) { @@ -31,7 +52,7 @@ function editing_name_change(field) { var name = field.name.substr(0, field.name.length - 7); - var type = field.form[name + '[type]']; + var type = form_field(field.form, name + '[type]'); var opts = type.options; var table = re_escape(field.value); var column = ''; @@ -63,7 +84,7 @@ } } if (candidate) { - opts.selectedIndex = candidate; + type.selectedIndex = candidate; type.onchange(); } } @@ -108,7 +129,7 @@ } function editing_remove_row(button) { - var field = button.form[button.name.replace(/drop_col(.+)/, 'fields$1[field]')]; + var field = form_field(button.form, button.name.replace(/drop_col(.+)/, 'fields$1[field]')); field.parentNode.removeChild(field); button.parentNode.parentNode.style.display = 'none'; return true; @@ -116,7 +137,7 @@ function editing_type_change(type) { var name = type.name.substr(0, type.name.length - 6); - var text = type.options[type.selectedIndex].text; + var text = select_value(type); for (var i=0; i < type.form.elements.length; i++) { var el = type.form.elements[i]; if (el.name == name + '[collation]') { @@ -136,7 +157,7 @@ } function partition_by_change(el) { - var partition_table = /RANGE|LIST/.test(el.options[el.selectedIndex].text); + var partition_table = /RANGE|LIST/.test(select_value(el)); el.form['partitions'].className = (partition_table || !el.selectedIndex ? 'hidden' : ''); document.getElementById('partition-table').className = (partition_table ? '' : 'hidden'); } @@ -166,7 +187,9 @@ function indexes_add_row(field) { var row = field.parentNode.parentNode.cloneNode(true); var spans = row.getElementsByTagName('span'); - row.getElementsByTagName('td')[1].innerHTML = '<span>' + spans[spans.length - 1].innerHTML + '</span>'; + for (var i=0; i < spans.length - 1; i++) { + row.removeChild(spans[i]); + } var selects = row.getElementsByTagName('select'); for (var i=0; i < selects.length; i++) { selects[i].name = selects[i].name.replace(/indexes\[[0-9]+/, '$&1'); Modified: trunk/adminer/foreign.inc.php =================================================================== --- trunk/adminer/foreign.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/foreign.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -46,6 +46,7 @@ <?php echo lang('Target table'); ?>: <select name="table" onchange="this.form['change-js'].value = '1'; this.form.submit();"><?php echo optionlist(array_keys(table_status_referencable()), $row["table"]); ?></select> <input type="hidden" name="change-js" value=""> +</p> <noscript><p><input type="submit" name="change" value="<?php echo lang('Change'); ?>"></noscript> <table cellspacing="0"> <thead><tr><th><?php echo lang('Source'); ?><th><?php echo lang('Target'); ?></thead> Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/include/adminer.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -87,7 +87,6 @@ * @return string */ function selectQuery($query) { - // it would be nice if $query can be passed by reference and printed value would be returned but call_user() doesn't allow reference parameters return "<p><code class='jush-sql'>" . h($query) . "</code> <a href='" . h(ME) . "sql=" . urlencode($query) . "'>" . lang('Edit') . "</a></p>\n"; } Modified: trunk/adminer/sql.inc.php =================================================================== --- trunk/adminer/sql.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/sql.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -69,7 +69,7 @@ do { $result = $dbh->store_result(); if (!$i) { - echo "<p class='time'>" . (is_object($result) ? lang('%d row(s)', $result->num_rows) . ", ": "") . lang('%.3f s', max(0, $end[0] - $start[0] + $end[1] - $start[1])) . "</p>\n"; // </p> required by IE + echo "<p class='time'>" . (is_object($result) ? lang('%d row(s)', $result->num_rows) . ", ": "") . lang('%.3f s', max(0, $end[0] - $start[0] + $end[1] - $start[1])) . "</p>\n"; $i++; } if (is_object($result)) { Modified: trunk/adminer/trigger.inc.php =================================================================== --- trunk/adminer/trigger.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/trigger.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -28,7 +28,7 @@ <form action="" method="post" id="form"> <table cellspacing="0"> -<tr><th><?php echo lang('Time'); ?><td><select name="Timing" onchange="if (/^<?php echo h(preg_quote($TABLE, "/")); ?>_[ba][iud]$/.test(this.form['Trigger'].value)) this.form['Trigger'].value = '<?php echo h(addcslashes($TABLE, "\r\n'\\")); ?>_' + this.value.charAt(0).toLowerCase() + this.form['Event'].value.charAt(0).toLowerCase();"><?php echo optionlist($trigger_time, $row["Timing"]); ?></select> +<tr><th><?php echo lang('Time'); ?><td><select name="Timing" onchange="if (/^<?php echo h(preg_quote($TABLE, "/")); ?>_[ba][iud]$/.test(this.form['Trigger'].value)) this.form['Trigger'].value = '<?php echo h(addcslashes($TABLE, "\r\n'\\")); ?>_' + select_value(this).charAt(0).toLowerCase() + select_value(this.form['Event']).charAt(0).toLowerCase();"><?php echo optionlist($trigger_time, $row["Timing"]); ?></select> <tr><th><?php echo lang('Event'); ?><td><select name="Event" onchange="this.form['Timing'].onchange();"><?php echo optionlist($trigger_event, $row["Event"]); ?></select> <tr><th><?php echo lang('Name'); ?><td><input name="Trigger" value="<?php echo h($row["Trigger"]); ?>" maxlength="64"> </table> Modified: trunk/adminer/user.inc.php =================================================================== --- trunk/adminer/user.inc.php 2009-09-11 17:06:45 UTC (rev 1091) +++ trunk/adminer/user.inc.php 2009-09-11 17:08:18 UTC (rev 1092) @@ -118,7 +118,7 @@ <table cellspacing="0"> <tr><th><?php echo lang('Username'); ?><td><input name="user" maxlength="16" value="<?php echo h($row["user"]); ?>"> <tr><th><?php echo lang('Server'); ?><td><input name="host" maxlength="60" value="<?php echo h($row["host"]); ?>"> -<tr><th><?php echo lang('Password'); ?><td><input id="pass" name="pass" value="<?php echo h($row["pass"]); ?>"><?php if (!$row["hashed"]) { ?><script type="text/javascript">document.getElementById('pass').type = 'password';</script><?php } ?> <label><input type="checkbox" name="hashed" value="1"<?php if ($row["hashed"]) { ?> checked<?php } ?> onclick="this.form['pass'].type = (this.checked ? 'text' : 'password');"><?php echo lang('Hashed'); ?></label> +<tr><th><?php echo lang('Password'); ?><td><input id="pass" name="pass" value="<?php echo h($row["pass"]); ?>"><?php if (!$row["hashed"]) { ?><script type="text/javascript">type_password(document.getElementById('pass'));</script><?php } ?> <label><input type="checkbox" name="hashed" value="1"<?php if ($row["hashed"]) { ?> checked<?php } ?> onclick="type_password(this.form['pass'], this.checked);"><?php echo lang('Hashed'); ?></label> </table> <?php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-11 19:26:44
|
Revision: 1096 http://adminer.svn.sourceforge.net/adminer/?rev=1096&view=rev Author: jakubvrana Date: 2009-09-11 19:26:27 +0000 (Fri, 11 Sep 2009) Log Message: ----------- Hide select export and import Modified Paths: -------------- trunk/adminer/include/adminer.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-09-11 19:12:33 UTC (rev 1095) +++ trunk/adminer/include/adminer.inc.php 2009-09-11 19:26:27 UTC (rev 1096) @@ -136,7 +136,7 @@ * @return null */ function selectColumnsPrint($select, $columns) { - echo '<fieldset><legend><a href="#fieldset-select" onclick="return !toggle(\'fieldset-select\');">' . lang('Select') . "</a></legend><div id='fieldset-select'" . ($select ? "" : " class='hidden'") . ">\n"; + print_fieldset("select", lang('Select'), $select); $i = 0; $fun_group = array(lang('Functions') => $this->functions, lang('Aggregation') => $this->grouping); foreach ($select as $key => $val) { @@ -157,7 +157,7 @@ * @return null */ function selectSearchPrint($where, $columns, $indexes) { - echo '<fieldset><legend><a href="#fieldset-search" onclick="return !toggle(\'fieldset-search\');">' . lang('Search') . "</a></legend><div id='fieldset-search'" . ($where ? "" : " class='hidden'") . ">\n"; + print_fieldset("search", lang('Search'), $where); foreach ($indexes as $i => $index) { if ($index["type"] == "FULLTEXT") { echo "(<i>" . implode("</i>, <i>", array_map('h', $index["columns"])) . "</i>) AGAINST"; @@ -188,7 +188,7 @@ * @return null */ function selectOrderPrint($order, $columns, $indexes) { - echo '<fieldset><legend><a href="#fieldset-sort" onclick="return !toggle(\'fieldset-sort\');">' . lang('Sort') . "</a></legend><div id='fieldset-sort'" . ($order ? "" : " class='hidden'") . ">\n"; + print_fieldset("sort", lang('Sort'), $order); $i = 0; foreach ((array) $_GET["order"] as $key => $val) { if (isset($columns[$val])) { Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-09-11 19:12:33 UTC (rev 1095) +++ trunk/adminer/include/functions.inc.php 2009-09-11 19:26:27 UTC (rev 1096) @@ -557,3 +557,13 @@ $domain = '[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])'; // one domain component return eregi("^$atom+(\\.$atom+)*@($domain?\\.)+$domain\$", $email); } + +/** Print header for hidden fieldset (close by </div></fieldset>) +* @param string +* @param string +* @param bool +* @return null +*/ +function print_fieldset($id, $legend, $visible = false) { + echo "<fieldset><legend><a href='#fieldset-$id' onclick=\"return !toggle('fieldset-$id');\">$legend</a></legend><div id='fieldset-$id'" . ($visible ? "" : " class='hidden'") . ">\n"; +} Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-09-11 19:12:33 UTC (rev 1095) +++ trunk/adminer/select.inc.php 2009-09-11 19:26:27 UTC (rev 1096) @@ -282,9 +282,13 @@ echo " (" . lang('%d row(s)', $found_rows) . ') <label><input type="checkbox" name="all" value="1">' . lang('whole result') . "</label>\n"; echo (information_schema(DB) ? "" : "<fieldset><legend>" . lang('Edit') . "</legend><div><input type='submit' name='edit' value='" . lang('Edit') . "'> <input type='submit' name='clone' value='" . lang('Clone') . "'> <input type='submit' name='delete' value='" . lang('Delete') . "'$confirm></div></fieldset>\n"); - echo "<fieldset><legend>" . lang('Export') . "</legend><div>$dump_output $dump_format $dump_compress <input type='submit' name='export' value='" . lang('Export') . "'></div></fieldset>\n"; + print_fieldset("export", lang('Export')); + echo "$dump_output $dump_format $dump_compress <input type='submit' name='export' value='" . lang('Export') . "'>\n"; + echo "</div></fieldset>\n"; } - echo "<fieldset><legend>" . lang('CSV Import') . "</legend><div><input type='hidden' name='token' value='$token'><input type='file' name='csv_file'> <input type='submit' name='import' value='" . lang('Import') . "'></div></fieldset>\n"; + print_fieldset("import", lang('CSV Import'), !$result->num_rows); + echo "<input type='hidden' name='token' value='$token'><input type='file' name='csv_file'> <input type='submit' name='import' value='" . lang('Import') . "'>\n"; + echo "</div></fieldset>\n"; $adminer->selectEmailPrint(array_filter($email_fields, 'strlen'), $columns); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-14 16:07:54
|
Revision: 1109 http://adminer.svn.sourceforge.net/adminer/?rev=1109&view=rev Author: jakubvrana Date: 2009-09-14 16:07:35 +0000 (Mon, 14 Sep 2009) Log Message: ----------- Detect removed default (thanks to cvicebni ubor) Modified Paths: -------------- trunk/adminer/create.inc.php trunk/adminer/include/editing.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-14 15:12:51 UTC (rev 1108) +++ trunk/adminer/create.inc.php 2009-09-14 16:07:35 UTC (rev 1109) @@ -37,6 +37,9 @@ $type_field = (isset($types[$field["type"]]) ? $field : $referencable_primary[$foreign_keys[$field["type"]]]); if (strlen($field["field"])) { if ($type_field) { + if (!$field["has_default"]) { + $field["default"] = null; + } $process_field = process_field($field, $type_field); $auto_increment = ($key == $_POST["auto_increment_col"]); if ($process_field != process_field($orig_field, $orig_field) || $orig_field["auto_increment"] != $auto_increment) { Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-09-14 15:12:51 UTC (rev 1108) +++ trunk/adminer/include/editing.inc.php 2009-09-14 16:07:35 UTC (rev 1109) @@ -124,7 +124,7 @@ global $dbh; return idf_escape($field["field"]) . process_type($type_field) . ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp - . (!$field["has_default"] || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"]))) + . (!isset($field["default"]) || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"]))) . " COMMENT " . $dbh->quote($field["comment"]) ; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-14 19:39:44
|
Revision: 1110 http://adminer.svn.sourceforge.net/adminer/?rev=1110&view=rev Author: jakubvrana Date: 2009-09-14 19:39:37 +0000 (Mon, 14 Sep 2009) Log Message: ----------- Display whitespace in texts (bug #2858042) Modified Paths: -------------- trunk/adminer/include/editing.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-09-14 16:07:35 UTC (rev 1109) +++ trunk/adminer/include/editing.inc.php 2009-09-14 19:39:37 UTC (rev 1110) @@ -53,10 +53,10 @@ } else { if ($blobs[$key] && !is_utf8($val)) { $val = "<i>" . lang('%d byte(s)', strlen($val)) . "</i>"; //! link to download - } elseif (!strlen(trim($val, " \t"))) { + } elseif (!strlen($val)) { $val = " "; // some content to print a border } else { - $val = nl2br(h($val)); + $val = whitespace(h($val)); if ($types[$key] == 254) { $val = "<code>$val</code>"; } @@ -124,7 +124,7 @@ global $dbh; return idf_escape($field["field"]) . process_type($type_field) . ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp - . (!isset($field["default"]) || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"]))) + . (!$field["has_default"] || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"]))) . " COMMENT " . $dbh->quote($field["comment"]) ; } Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-09-14 16:07:35 UTC (rev 1109) +++ trunk/adminer/include/functions.inc.php 2009-09-14 19:39:37 UTC (rev 1110) @@ -43,6 +43,14 @@ return htmlspecialchars($string, ENT_QUOTES); } +/** Convert text whitespace to HTML +* @param string +* @return string +*/ +function whitespace($string) { + return nl2br(preg_replace('~(^| ) ~m', '\\1 ', str_replace("\t", " ", $string))); +} + /** Escape for TD * @param string * @return string Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-09-14 16:07:35 UTC (rev 1109) +++ trunk/adminer/select.inc.php 2009-09-14 19:39:37 UTC (rev 1110) @@ -219,12 +219,12 @@ if (ereg('blob|binary', $fields[$key]["type"]) && strlen($val)) { $link = h(ME . 'download=' . urlencode($TABLE) . '&field=' . urlencode($key) . '&') . $unique_idf; } - if (!strlen(trim($val, " \t"))) { + if (!strlen($val)) { $val = " "; } elseif (strlen($text_length) && ereg('blob|text', $fields[$key]["type"]) && is_utf8($val)) { - $val = nl2br(shorten_utf8($val, max(0, intval($text_length)))); // usage of LEFT() would reduce traffic but complicate query + $val = whitespace(shorten_utf8($val, max(0, intval($text_length)))); // usage of LEFT() would reduce traffic but complicate query } else { - $val = nl2br(h($val)); + $val = whitespace(h($val)); } if (!$link) { // link related items This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-25 09:52:36
|
Revision: 1145 http://adminer.svn.sourceforge.net/adminer/?rev=1145&view=rev Author: jakubvrana Date: 2009-09-25 09:52:24 +0000 (Fri, 25 Sep 2009) Log Message: ----------- Don't remove onchange after click on add Modified Paths: -------------- trunk/adminer/include/editing.inc.php trunk/adminer/static/editing.js Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-09-25 09:01:28 UTC (rev 1144) +++ trunk/adminer/include/editing.inc.php 2009-09-25 09:52:24 UTC (rev 1145) @@ -182,7 +182,7 @@ <td<?php echo ($column_comments ? "" : " class='hidden'"); ?>><input name="fields[<?php echo $i; ?>][comment]" value="<?php echo h($field["comment"]); ?>" maxlength="255"> <?php } ?> <?php - echo "<td class='nowrap'><input type='image' name='add[$i]' src='../adminer/static/plus.gif' alt='+' title='" . lang('Add next') . "' onclick='var x = editing_add_row(this, $allowed); if (x) { x.focus(); x.onchange = function () { }; } return !x;'>"; + echo "<td class='nowrap'><input type='image' name='add[$i]' src='../adminer/static/plus.gif' alt='+' title='" . lang('Add next') . "' onclick='return !editing_add_row(this, $allowed, 1);'>"; echo " <input type='image' name='drop_col[$i]' src='../adminer/static/cross.gif' alt='x' title='" . lang('Remove') . "' onclick='return !editing_remove_row(this);'>"; echo " <input type='image' name='up[$i]' src='../adminer/static/up.gif' alt='^' title='" . lang('Move up') . "'>"; echo " <input type='image' name='down[$i]' src='../adminer/static/down.gif' alt='v' title='" . lang('Move down') . "'>"; Modified: trunk/adminer/static/editing.js =================================================================== --- trunk/adminer/static/editing.js 2009-09-25 09:01:28 UTC (rev 1144) +++ trunk/adminer/static/editing.js 2009-09-25 09:52:24 UTC (rev 1145) @@ -91,7 +91,7 @@ } } -function editing_add_row(button, allowed) { +function editing_add_row(button, allowed, focus) { if (allowed && row_count >= allowed) { return false; } @@ -107,7 +107,7 @@ } tags = row.getElementsByTagName('input'); tags2 = row2.getElementsByTagName('input'); - var ret = tags2[0]; // IE loose tags2 after insertBefore() + var input = tags2[0]; // IE loose tags2 after insertBefore() for (var i=0; i < tags.length; i++) { if (tags[i].name == 'auto_increment_col') { tags2[i].value = x; @@ -125,9 +125,15 @@ editing_name_change(tags[0]); }; row.parentNode.insertBefore(row2, row.nextSibling); + if (focus) { + input.onchange = function () { + editing_name_change(input); + }; + input.focus(); + } added += '0'; row_count++; - return ret; + return true; } function editing_remove_row(button) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-25 12:03:41
|
Revision: 1147 http://adminer.svn.sourceforge.net/adminer/?rev=1147&view=rev Author: jakubvrana Date: 2009-09-25 12:03:30 +0000 (Fri, 25 Sep 2009) Log Message: ----------- Separate checkbox Modified Paths: -------------- trunk/adminer/db.inc.php trunk/adminer/dump.inc.php trunk/adminer/event.inc.php trunk/adminer/include/adminer.inc.php trunk/adminer/include/editing.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/processlist.inc.php trunk/adminer/select.inc.php trunk/adminer/sql.inc.php trunk/adminer/user.inc.php Modified: trunk/adminer/db.inc.php =================================================================== --- trunk/adminer/db.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/db.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -50,7 +50,7 @@ echo '<thead><tr class="wrap"><td><input id="check-all" type="checkbox" onclick="form_check(this, /^(tables|views)\[/);"><th>' . lang('Table') . '<td>' . lang('Engine') . '<td>' . lang('Collation') . '<td>' . lang('Data Length') . '<td>' . lang('Index Length') . '<td>' . lang('Data Free') . '<td>' . lang('Auto Increment') . '<td>' . lang('Rows') . '<td>' . lang('Comment') . "</thead>\n"; foreach ($table_status as $row) { $name = $row["Name"]; - echo '<tr' . odd() . '><td><input type="checkbox" name="' . (isset($row["Rows"]) ? 'tables' : 'views') . '[]" value="' . h($name) . '"' . (in_array($name, $tables_views, true) ? ' checked' : '') . ' onclick="form_uncheck(\'check-all\');">'; + echo '<tr' . odd() . '><td>' . checkbox((isset($row["Rows"]) ? "tables[]" : "views[]"), $name, in_array($name, $tables_views, true), "", "form_uncheck('check-all');"); echo '<th><a href="' . h(ME) . 'table=' . urlencode($name) . '">' . h($name) . '</a>'; if (isset($row["Rows"])) { echo "<td>$row[Engine]<td>$row[Collation]"; Modified: trunk/adminer/dump.inc.php =================================================================== --- trunk/adminer/dump.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/dump.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -148,13 +148,11 @@ echo "<tr><th>" . lang('Compression') . "<td>" . ($dump_compress ? $dump_compress : lang('None of the supported PHP extensions (%s) are available.', 'zlib, bz2')) . "\n"; echo "<tr><th>" . lang('Database') . "<td><select name='db_style'>" . optionlist($db_style, (strlen(DB) ? '' : 'CREATE')) . "</select>\n"; if ($connection->server_info >= 5) { - $objects = array('routines' => lang('Routines')); + $checked = strlen($_GET["dump"]); + checkbox("routines", 1, $checked, lang('Routines')); if ($connection->server_info >= 5.1) { - $objects['events'] = lang('Events'); + checkbox("events", 1, $checked, lang('Events')); } - foreach ($objects as $key => $val) { - echo " <label><input type='checkbox' name='$key' value='1'" . (strlen($_GET["dump"]) ? "" : " checked") . ">$val</label>"; - } } echo "<tr><th>" . lang('Tables') . "<td><select name='table_style'>" . optionlist($table_style, 'DROP+CREATE') . "</select>\n"; echo "<tr><th>" . lang('Data') . "<td><select name='data_style'>" . optionlist($data_style, 'INSERT') . "</select>\n"; @@ -172,12 +170,12 @@ echo "</thead>\n"; $views = ""; foreach (table_status() as $row) { - $checked = (strlen($TABLE) && $row["Name"] != $TABLE ? '' : " checked"); - $print = "<tr><td><label><input type='checkbox' name='tables[]' value='" . h($row["Name"]) . "'$checked onclick=\"form_uncheck('check-tables');\">" . h($row["Name"]) . "</label>"; + $checked = (strlen($TABLE) && $row["Name"] != $TABLE); + $print = "<tr><td>" . checkbox("tables[]", $row["Name"], $checked, $row["Name"], "form_uncheck('check-tables');"); if (!$row["Engine"]) { $views .= "$print\n"; } else { - echo "$print<td align='right'><label>" . ($row["Engine"] == "InnoDB" && $row["Rows"] ? lang('~ %s', $row["Rows"]) : $row["Rows"]) . "<input type='checkbox' name='data[]' value='" . h($row["Name"]) . "'$checked onclick=\"form_uncheck('check-data');\"></label>\n"; + echo "$print<td align='right'><label>" . ($row["Engine"] == "InnoDB" && $row["Rows"] ? lang('~ %s', $row["Rows"]) : $row["Rows"]) . checkbox("data[]", $row["Name"], $checked, "", "form_uncheck('check-data');") . "</label>\n"; } } echo $views; @@ -185,7 +183,7 @@ echo "<thead><tr><th style='text-align: left;'><label><input type='checkbox' id='check-databases' checked onclick='form_check(this, /^databases\\[/);'>" . lang('Database') . "</label></thead>\n"; foreach (get_databases() as $db) { if (!information_schema($db)) { - echo '<tr><td><label><input type="checkbox" name="databases[]" value="' . h($db) . '" checked onclick="form_uncheck(\'check-databases\');">' . h($db) . "</label>\n"; + echo "<tr><td>" . checkbox("databases[]", $db, 1, $db, "form_uncheck('check-databases');") . "</label>\n"; } } } Modified: trunk/adminer/event.inc.php =================================================================== --- trunk/adminer/event.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/event.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -43,7 +43,7 @@ <tr><th><?php echo lang('Every'); ?><td><input name="INTERVAL_VALUE" value="<?php echo h($row["INTERVAL_VALUE"]); ?>" size="6"> <select name="INTERVAL_FIELD"><?php echo optionlist($intervals, $row["INTERVAL_FIELD"]); ?></select> <tr><th><?php echo lang('Status'); ?><td><select name="STATUS"><?php echo optionlist($statuses, $row["STATUS"]); ?></select> <tr><th><?php echo lang('Comment'); ?><td><input name="EVENT_COMMENT" value="<?php echo h($row["EVENT_COMMENT"]); ?>" maxlength="64"> -<tr><th> <td><label><input type="checkbox" name="ON_COMPLETION" value="PRESERVE"<?php echo ($row["ON_COMPLETION"] == "PRESERVE" ? " checked" : ""); ?>><?php echo lang('On completion preserve'); ?></label> +<tr><th> <td><?php echo checkbox("ON_COMPLETION", "PRESERVE", $row["ON_COMPLETION"] == "PRESERVE", lang('On completion preserve')); ?> </table> <p><textarea name="EVENT_DEFINITION" rows="10" cols="80" style="width: 98%;"><?php echo h($row["EVENT_DEFINITION"]); ?></textarea> <p> Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/include/adminer.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -183,7 +183,7 @@ if ($index["type"] == "FULLTEXT") { echo "(<i>" . implode("</i>, <i>", array_map('h', $index["columns"])) . "</i>) AGAINST"; echo " <input name='fulltext[$i]' value='" . h($_GET["fulltext"][$i]) . "'>"; - echo "<label><input type='checkbox' name='boolean[$i]' value='1'" . (isset($_GET["boolean"][$i]) ? " checked" : "") . ">BOOL</label>"; + echo checkbox("boolean[$i]", 1, isset($_GET["boolean"][$i]), "BOOL"); echo "<br>\n"; } } @@ -214,12 +214,12 @@ foreach ((array) $_GET["order"] as $key => $val) { if (isset($columns[$val])) { echo "<div><select name='order[$i]'><option>" . optionlist($columns, $val, true) . "</select>"; - echo "<label><input type='checkbox' name='desc[$i]' value='1'" . (isset($_GET["desc"][$key]) ? " checked" : "") . ">" . lang('descending') . "</label></div>\n"; + echo checkbox("desc[$i]", 1, isset($_GET["desc"][$key]), lang('descending')) . "</div>\n"; $i++; } } echo "<div><select name='order[$i]' onchange='select_add_row(this);'><option>" . optionlist($columns, null, true) . "</select>"; - echo "<label><input type='checkbox' name='desc[$i]' value='1'>" . lang('descending') . "</label></div>\n"; + echo checkbox("desc[$i]", 1, 0, lang('descending')) . "</div>\n"; echo "</div></fieldset>\n"; } Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/include/editing.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -176,9 +176,9 @@ <th><?php if ($display) { ?><input name="fields[<?php echo $i; ?>][field]" value="<?php echo h($field["field"]); ?>" onchange="<?php echo (strlen($field["field"]) || count($fields) > 1 ? "" : "editing_add_row(this, $allowed); "); ?>editing_name_change(this);" maxlength="64"><?php } ?><input type="hidden" name="fields[<?php echo $i; ?>][orig]" value="<?php echo h($field[($_POST ? "orig" : "field")]); ?>"> <?php edit_type("fields[$i]", $field, $collations, $foreign_keys); ?> <?php if ($type == "TABLE") { ?> -<td><input type="checkbox" name="fields[<?php echo $i; ?>][null]" value="1"<?php if ($field["null"]) { ?> checked<?php } ?>> +<td><?php echo checkbox("fields[$i][null]", 1, $field["null"]); ?> <td><input type="radio" name="auto_increment_col" value="<?php echo $i; ?>"<?php if ($field["auto_increment"]) { ?> checked<?php } ?>> -<td class="nowrap hidden"><input type="checkbox" name="fields[<?php echo $i; ?>][has_default]" value="1"<?php echo ($field["has_default"] ? " checked" : ""); ?>><input name="fields[<?php echo $i; ?>][default]" value="<?php echo h($field["default"]); ?>" onchange="this.previousSibling.checked = true;"> +<td class="nowrap hidden"><?php echo checkbox("fields[$i][has_default]", 1, $field["has_default"]); ?><input name="fields[<?php echo $i; ?>][default]" value="<?php echo h($field["default"]); ?>" onchange="this.previousSibling.checked = true;"> <td<?php echo ($column_comments ? "" : " class='hidden'"); ?>><input name="fields[<?php echo $i; ?>][comment]" value="<?php echo h($field["comment"]); ?>" maxlength="255"> <?php } ?> <?php Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/include/functions.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -59,6 +59,19 @@ return (strlen(trim($string)) ? h($string) : " "); } +/** Generate HTML checkbox +* @param string +* @param string +* @param bool +* @param string +* @param string +* @return string +*/ +function checkbox($name, $value, $checked, $label = "", $onclick = "") { + $return = "<input type='checkbox' name='$name' value='" . h($value) . "'" . ($checked ? " checked" : "") . ($onclick ? " onclick=\"$onclick\"" : "") . ">"; + return (strlen($label) ? "<label>$return" . h($label) . "</label>" : $return); +} + /** Generate list of HTML options * @param array array of strings or arrays (creates optgroup) * @param mixed Modified: trunk/adminer/processlist.inc.php =================================================================== --- trunk/adminer/processlist.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/processlist.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -20,7 +20,7 @@ if (!$i) { echo "<thead><tr lang='en'><th> <th>" . implode("<th>", array_keys($row)) . "</thead>\n"; } - echo "<tr" . odd() . "><td><input type='checkbox' name='kill[]' value='$row[Id]'><td>" . implode("<td>", array_map('nbsp', $row)) . "\n"; + echo "<tr" . odd() . "><td>" . checkbox("kill[]", $row["Id"], 0) . "<td>" . implode("<td>", array_map('nbsp', $row)) . "\n"; } ?> </table> Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/select.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -194,8 +194,8 @@ } echo ($backward_keys ? "<th>" . lang('Relations') : "") . "</thead>\n"; foreach ($adminer->rowDescriptions($rows, $foreign_keys) as $n => $row) { - $unique_idf = implode('&', unique_idf($rows[$n], $indexes)); - echo "<tr" . odd() . "><td><input type='checkbox' name='check[]' value='$unique_idf'" . (in_array(str_replace("&", "&", $unique_idf), (array) $_POST["check"]) ? " checked" : "") . " onclick=\"this.form['all'].checked = false; form_uncheck('all-page');\">" . (count($select) != count($group) || information_schema(DB) ? '' : " <a href='" . h(ME) . "edit=" . urlencode($TABLE) . "&$unique_idf'>" . lang('edit') . "</a>"); + $unique_idf = implode('&', unique_idf($rows[$n], $indexes)); + echo "<tr" . odd() . "><td>" . checkbox("check[]", $unique_idf, in_array($unique_idf, (array) $_POST["check"]), "", "this.form['all'].checked = false; form_uncheck('all-page');") . (count($select) != count($group) || information_schema(DB) ? '' : " <a href='" . h(ME . "edit=" . urlencode($TABLE) . "&$unique_idf") . "'>" . lang('edit') . "</a>"); foreach ($row as $key => $val) { if (isset($names[$key])) { if (strlen($val) && (!isset($email_fields[$key]) || strlen($email_fields[$key]))) { @@ -207,7 +207,7 @@ $val = "<i>NULL</i>"; } else { if (ereg('blob|binary', $fields[$key]["type"]) && strlen($val)) { - $link = h(ME . 'download=' . urlencode($TABLE) . '&field=' . urlencode($key) . '&') . $unique_idf; + $link = h(ME . 'download=' . urlencode($TABLE) . '&field=' . urlencode($key) . "&$unique_idf"); } if (!strlen($val)) { $val = " "; @@ -257,7 +257,7 @@ } echo ($_GET["page"] + 3 < $max_page ? " ..." : "") . pagination($max_page); } - echo " (" . lang('%d row(s)', $found_rows) . ') <label><input type="checkbox" name="all" value="1">' . lang('whole result') . "</label>\n"; + echo " (" . lang('%d row(s)', $found_rows) . ") " . checkbox("all", 1, 0, lang('whole result')) . "\n"; echo (information_schema(DB) ? "" : "<fieldset><legend>" . lang('Edit') . "</legend><div><input type='submit' name='edit' value='" . lang('Edit') . "'> <input type='submit' name='clone' value='" . lang('Clone') . "'> <input type='submit' name='delete' value='" . lang('Delete') . "' onclick=\"return confirm('" . lang('Are you sure?') . " (' + (this.form['all'].checked ? $found_rows : form_checked(this, /check/)) + ')');\"></div></fieldset>\n"); print_fieldset("export", lang('Export')); Modified: trunk/adminer/sql.inc.php =================================================================== --- trunk/adminer/sql.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/sql.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -129,7 +129,7 @@ <p> <input type="hidden" name="token" value="<?php echo $token; ?>"> <input type="submit" value="<?php echo lang('Execute'); ?>"> -<label><input type="checkbox" name="error_stops" value="1"<?php echo ($_POST["error_stops"] ? " checked" : ""); ?>><?php echo lang('Stop on error'); ?></label> +<?php echo checkbox("error_stops", 1, $_POST["error_stops"], lang('Stop on error')); ?> <p> <?php Modified: trunk/adminer/user.inc.php =================================================================== --- trunk/adminer/user.inc.php 2009-09-25 11:29:46 UTC (rev 1146) +++ trunk/adminer/user.inc.php 2009-09-25 12:03:30 UTC (rev 1147) @@ -118,7 +118,9 @@ <table cellspacing="0"> <tr><th><?php echo lang('Username'); ?><td><input name="user" maxlength="16" value="<?php echo h($row["user"]); ?>"> <tr><th><?php echo lang('Server'); ?><td><input name="host" maxlength="60" value="<?php echo h($row["host"]); ?>"> -<tr><th><?php echo lang('Password'); ?><td><input id="pass" name="pass" value="<?php echo h($row["pass"]); ?>"><?php if (!$row["hashed"]) { ?><script type="text/javascript">type_password(document.getElementById('pass'));</script><?php } ?> <label><input type="checkbox" name="hashed" value="1"<?php if ($row["hashed"]) { ?> checked<?php } ?> onclick="type_password(this.form['pass'], this.checked);"><?php echo lang('Hashed'); ?></label> +<tr><th><?php echo lang('Password'); ?><td><input id="pass" name="pass" value="<?php echo h($row["pass"]); ?>"> +<?php if (!$row["hashed"]) { ?><script type="text/javascript">type_password(document.getElementById('pass'));</script><?php } ?> +<?php echo checkbox("hashed", 1, $row["hashed"], lang('Hashed'), "type_password(this.form['pass'], this.checked);"); ?> </table> <?php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-06 10:40:58
|
Revision: 1169 http://adminer.svn.sourceforge.net/adminer/?rev=1169&view=rev Author: jakubvrana Date: 2009-10-06 10:40:52 +0000 (Tue, 06 Oct 2009) Log Message: ----------- Work with default values Modified Paths: -------------- trunk/adminer/create.inc.php trunk/adminer/include/editing.inc.php trunk/adminer/include/mysql.inc.php trunk/adminer/procedure.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-10-06 10:00:23 UTC (rev 1168) +++ trunk/adminer/create.inc.php 2009-10-06 10:40:52 UTC (rev 1169) @@ -37,6 +37,11 @@ $type_field = (isset($types[$field["type"]]) ? $field : $referencable_primary[$foreign_keys[$field["type"]]]); if (strlen($field["field"])) { if ($type_field) { + $default = eregi_replace(" *on update CURRENT_TIMESTAMP", "", $field["default"]); + if ($default != $field["default"]) { // preg_replace $count is available since PHP 5.1.0 + $field["on_update"] = "CURRENT_TIMESTAMP"; + $field["default"] = $default; + } if (!$field["has_default"]) { $field["default"] = null; } Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-10-06 10:00:23 UTC (rev 1168) +++ trunk/adminer/include/editing.inc.php 2009-10-06 10:40:52 UTC (rev 1169) @@ -100,10 +100,8 @@ <td><select name="<?php echo $key; ?>[type]" class="type" onchange="editing_type_change(this);"><?php echo optionlist($structured_types + ($foreign_keys ? array(lang('Foreign keys') => $foreign_keys) : array()), $field["type"]); ?></select> <td><input name="<?php echo $key; ?>[length]" value="<?php echo h($field["length"]); ?>" size="3"> <td><?php -echo "<select name='$key" . "[collation]'" . (ereg('(char|text|enum|set)$', $field["type"]) ? "" : " class='hidden'") . '><option value="">(' . lang('collation') . ')' . optionlist($collations, $field["collation"]) . '</select>'; -echo ($unsigned ? " <select name='$key" . "[unsigned]'" . (!$field["type"] || ereg('(int|float|double|decimal)$', $field["type"]) ? "" : " class='hidden'") . '><option>' . optionlist($unsigned, $field["unsigned"]) . '</select>' : ''); -?> -<?php + echo "<select name='$key" . "[collation]'" . (ereg('(char|text|enum|set)$', $field["type"]) ? "" : " class='hidden'") . '><option value="">(' . lang('collation') . ')' . optionlist($collations, $field["collation"]) . '</select>'; + echo ($unsigned ? " <select name='$key" . "[unsigned]'" . (!$field["type"] || ereg('(int|float|double|decimal)$', $field["type"]) ? "" : " class='hidden'") . '><option>' . optionlist($unsigned, $field["unsigned"]) . '</select>' : ''); } function process_length($length) { @@ -112,7 +110,7 @@ } function process_type($field, $collate = "COLLATE") { - global $connection, $enum_length, $unsigned; + global $connection, $unsigned; return " $field[type]" . (strlen($field["length"]) && !ereg('^date|time$', $field["type"]) ? "(" . process_length($field["length"]) . ")" : "") . (ereg('int|float|double|decimal', $field["type"]) && in_array($field["unsigned"], $unsigned) ? " $field[unsigned]" : "") @@ -122,10 +120,10 @@ function process_field($field, $type_field) { global $connection; - $default = $field["default"] . ($field["on_update"] ? " ON UPDATE $field[on_update]" : ""); return idf_escape($field["field"]) . process_type($type_field) . ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp - . (!isset($field["default"]) || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $default) ? $default : $connection->quote($default))) + . (!isset($field["default"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP$", $field["default"]) ? $field["default"] : $connection->quote($field["default"]))) + . ($field["on_update"] ? " ON UPDATE $field[on_update]" : "") . " COMMENT " . $connection->quote($field["comment"]) ; } Modified: trunk/adminer/include/mysql.inc.php =================================================================== --- trunk/adminer/include/mysql.inc.php 2009-10-06 10:00:23 UTC (rev 1168) +++ trunk/adminer/include/mysql.inc.php 2009-10-06 10:40:52 UTC (rev 1169) @@ -223,7 +223,7 @@ "default" => (strlen($row["Default"]) || ereg("char", $match[1]) ? $row["Default"] : null), "null" => ($row["Null"] == "YES"), "auto_increment" => ($row["Extra"] == "auto_increment"), - "on_update" => (preg_match('~^on update (.+)~', $row["Extra"], $match) ? $match[1] : ""), + "on_update" => (eregi('^on update (.+)', $row["Extra"], $match) ? $match[1] : ""), //! available since MySQL 5.1.23 "collation" => $row["Collation"], "privileges" => array_flip(explode(",", $row["Privileges"])), "comment" => $row["Comment"], Modified: trunk/adminer/procedure.inc.php =================================================================== --- trunk/adminer/procedure.inc.php 2009-10-06 10:00:23 UTC (rev 1168) +++ trunk/adminer/procedure.inc.php 2009-10-06 10:40:52 UTC (rev 1169) @@ -42,7 +42,7 @@ <form action="" method="post" id="form"> <table cellspacing="0"> <?php edit_fields($row["fields"], $collations, $routine); ?> -<?php if (isset($_GET["function"])) { ?><tr><td><?php echo lang('Return type'); ?><?php echo edit_type("returns", $row["returns"], $collations); ?><?php } ?> +<?php if (isset($_GET["function"])) { ?><tr><td><?php echo lang('Return type') . edit_type("returns", $row["returns"], $collations); ?><?php } ?> </table> <p><textarea name="definition" rows="10" cols="80" style="width: 98%;"><?php echo h($row["definition"]); ?></textarea> <p> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-07 15:52:42
|
Revision: 1178 http://adminer.svn.sourceforge.net/adminer/?rev=1178&view=rev Author: jakubvrana Date: 2009-10-07 15:52:34 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Remove intval Modified Paths: -------------- trunk/adminer/processlist.inc.php trunk/adminer/select.inc.php Modified: trunk/adminer/processlist.inc.php =================================================================== --- trunk/adminer/processlist.inc.php 2009-10-07 11:12:16 UTC (rev 1177) +++ trunk/adminer/processlist.inc.php 2009-10-07 15:52:34 UTC (rev 1178) @@ -2,7 +2,7 @@ if ($_POST && !$error) { $killed = 0; foreach ((array) $_POST["kill"] as $val) { - if (queries("KILL " . intval($val))) { + if (queries("KILL " . ereg_replace("[^0-9]+", "", $val))) { $killed++; } } Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-10-07 11:12:16 UTC (rev 1177) +++ trunk/adminer/select.inc.php 2009-10-07 15:52:34 UTC (rev 1178) @@ -151,7 +151,7 @@ $adminer->selectActionPrint($text_length); echo "</form>\n"; - $query = "SELECT " . (intval($limit) && $group && count($group) < count($select) ? "SQL_CALC_FOUND_ROWS " : "") . $from . $group_by . (strlen($limit) ? " LIMIT " . intval($limit) . (intval($_GET["page"]) ? " OFFSET " . ($limit * $_GET["page"]) : "") : ""); + $query = "SELECT " . (intval($limit) && $group && count($group) < count($select) ? "SQL_CALC_FOUND_ROWS " : "") . $from . $group_by . (strlen($limit) ? " LIMIT " . intval($limit) . ($_GET["page"] ? " OFFSET " . ($limit * $_GET["page"]) : "") : ""); echo $adminer->selectQuery($query); $result = $connection->query($query); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-07 15:55:54
|
Revision: 1179 http://adminer.svn.sourceforge.net/adminer/?rev=1179&view=rev Author: jakubvrana Date: 2009-10-07 15:55:47 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Save bytes Modified Paths: -------------- trunk/adminer/call.inc.php trunk/adminer/create.inc.php trunk/adminer/edit.inc.php trunk/adminer/include/functions.inc.php Modified: trunk/adminer/call.inc.php =================================================================== --- trunk/adminer/call.inc.php 2009-10-07 15:52:34 UTC (rev 1178) +++ trunk/adminer/call.inc.php 2009-10-07 15:55:47 UTC (rev 1179) @@ -55,7 +55,7 @@ $field = $routine["fields"][$key]; echo "<tr><th>" . h($field["field"]); $value = $_POST["fields"][$key]; - if (strlen($value) && ($field["type"] == "enum" || $field["type"] == "set")) { + if (strlen($value) && ereg("enum|set", $field["type"])) { $value = intval($value); } input($field, $value, (string) $_POST["function"][$name]); // param name can be empty Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-10-07 15:52:34 UTC (rev 1178) +++ trunk/adminer/create.inc.php 2009-10-07 15:55:47 UTC (rev 1179) @@ -101,7 +101,7 @@ $engines = array(); $result = $connection->query("SHOW ENGINES"); while ($row = $result->fetch_assoc()) { - if ($row["Support"] == "YES" || $row["Support"] == "DEFAULT") { + if (ereg("YES|DEFAULT", $row["Support"])) { $engines[] = $row["Engine"]; } } Modified: trunk/adminer/edit.inc.php =================================================================== --- trunk/adminer/edit.inc.php 2009-10-07 15:52:34 UTC (rev 1178) +++ trunk/adminer/edit.inc.php 2009-10-07 15:55:47 UTC (rev 1179) @@ -51,7 +51,7 @@ $select = array(); foreach ($fields as $name => $field) { if (isset($field["privileges"]["select"])) { - $select[] = ($_POST["clone"] && $field["auto_increment"] ? "'' AS " : ($field["type"] == "enum" || $field["type"] == "set" ? "1*" . idf_escape($name) . " AS " : "")) . idf_escape($name); + $select[] = ($_POST["clone"] && $field["auto_increment"] ? "'' AS " : (ereg("enum|set", $field["type"]) ? "1*" . idf_escape($name) . " AS " : "")) . idf_escape($name); } } $row = array(); @@ -71,7 +71,7 @@ echo "<tr><th>" . $adminer->fieldName($field); $default = $_GET["set"][bracket_escape($name)]; $value = (isset($row) - ? (strlen($row[$name]) && ($field["type"] == "enum" || $field["type"] == "set") ? intval($row[$name]) : $row[$name]) + ? (strlen($row[$name]) && ereg("enum|set", $field["type"]) ? intval($row[$name]) : $row[$name]) : ($_POST["clone"] && $field["auto_increment"] ? "" : (isset($_GET["select"]) ? false : (isset($default) ? $default : $field["default"]))) ); if (!$_POST["save"] && is_string($value)) { Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-10-07 15:52:34 UTC (rev 1178) +++ trunk/adminer/include/functions.inc.php 2009-10-07 15:55:47 UTC (rev 1179) @@ -138,7 +138,7 @@ */ function unique_idf($row, $indexes) { foreach ($indexes as $index) { - if ($index["type"] == "PRIMARY" || $index["type"] == "UNIQUE") { + if (ereg("PRIMARY|UNIQUE", $index["type"])) { $return = array(); foreach ($index["columns"] as $key) { if (!isset($row[$key])) { // NULL is ambiguous This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-13 20:02:04
|
Revision: 1190 http://adminer.svn.sourceforge.net/adminer/?rev=1190&view=rev Author: jakubvrana Date: 2009-10-13 20:01:52 +0000 (Tue, 13 Oct 2009) Log Message: ----------- Introduce queries_redirect function Modified Paths: -------------- trunk/adminer/database.inc.php trunk/adminer/db.inc.php trunk/adminer/include/editing.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/processlist.inc.php trunk/adminer/select.inc.php trunk/adminer/user.inc.php Modified: trunk/adminer/database.inc.php =================================================================== --- trunk/adminer/database.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/database.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -27,7 +27,7 @@ if (!$row) { queries("DROP DATABASE " . idf_escape(DB)); } - query_redirect(queries(), preg_replace('~db=[^&]*&~', '', ME) . "db=" . urlencode($_POST["name"]), lang('Database has been renamed.'), !$row, false, $row); + queries_redirect(preg_replace('~db=[^&]*&~', '', ME) . "db=" . urlencode($_POST["name"]), lang('Database has been renamed.'), !$row); } } else { // alter database Modified: trunk/adminer/db.inc.php =================================================================== --- trunk/adminer/db.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/db.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -33,7 +33,7 @@ } } } - query_redirect(queries(), substr(ME, 0, -1), $message, $result, false, !$result); + queries_redirect(substr(ME, 0, -1), $message, $result); } page_header(lang('Database') . ": " . h(DB), $error, false); Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/include/editing.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -282,7 +282,7 @@ } $dropped = strlen($name) && ($_POST["dropped"] || queries($drop)); $created = queries($create); - if (!query_redirect(queries(), $location, (strlen($name) ? $message_alter : $message_create), $created, false, !$created) && $dropped) { + if (!queries_redirect($location, (strlen($name) ? $message_alter : $message_create), $created) && $dropped) { $_SESSION["messages"][] = $message_drop; } return $dropped; Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/include/functions.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -252,6 +252,15 @@ return $connection->query($query); } +/** Redirect by remembered queries +* @param string +* @param string +* @param bool +*/ +function queries_redirect($location, $message, $redirect) { + return query_redirect(queries(), $location, $message, $redirect, false, !$redirect); +} + /** Remove parameter from query string * @param string * @return string Modified: trunk/adminer/processlist.inc.php =================================================================== --- trunk/adminer/processlist.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/processlist.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -6,7 +6,7 @@ $killed++; } } - query_redirect(queries(), ME . "processlist=", lang('%d process(es) have been killed.', $killed), $killed || !$_POST["kill"], false, !$killed && $_POST["kill"]); + queries_redirect(ME . "processlist=", lang('%d process(es) have been killed.', $killed), $killed || !$_POST["kill"]); } page_header(lang('Process list'), $error); Modified: trunk/adminer/select.inc.php =================================================================== --- trunk/adminer/select.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/select.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -85,7 +85,7 @@ } } } - query_redirect(queries(), remove_from_uri("page"), lang('%d item(s) have been affected.', $affected), $result, false, !$result); + queries_redirect(remove_from_uri("page"), lang('%d item(s) have been affected.', $affected), $result); //! display edit page in case of an error } elseif (is_string($file = get_file("csv_file", true))) { $file = preg_replace("~^\xEF\xBB\xBF~", '', $file); //! character set @@ -111,7 +111,7 @@ } } } - query_redirect(queries(), remove_from_uri("page"), lang('%d row(s) have been imported.', $affected), $result, false, !$result); + queries_redirect(remove_from_uri("page"), lang('%d row(s) have been imported.', $affected), $result); } else { $error = upload_error($file); } Modified: trunk/adminer/user.inc.php =================================================================== --- trunk/adminer/user.inc.php 2009-10-13 19:43:33 UTC (rev 1189) +++ trunk/adminer/user.inc.php 2009-10-13 20:01:52 UTC (rev 1190) @@ -91,7 +91,7 @@ } } } - query_redirect(queries(), ME . "privileges=", (isset($_GET["host"]) ? lang('User has been altered.') : lang('User has been created.')), !$error, false, $error); + queries_redirect(ME . "privileges=", (isset($_GET["host"]) ? lang('User has been altered.') : lang('User has been created.')), !$error); if ($old_user != $new_user) { // delete new user in case of an error $connection->query("DROP USER $new_user"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-11-03 10:56:10
|
Revision: 1227 http://adminer.svn.sourceforge.net/adminer/?rev=1227&view=rev Author: jakubvrana Date: 2009-11-03 10:55:57 +0000 (Tue, 03 Nov 2009) Log Message: ----------- Improve session restarting Modified Paths: -------------- trunk/adminer/database.inc.php trunk/adminer/include/adminer.inc.php trunk/adminer/include/bootstrap.inc.php trunk/adminer/include/design.inc.php trunk/adminer/include/editing.inc.php trunk/adminer/include/functions.inc.php trunk/adminer/sql.inc.php Modified: trunk/adminer/database.inc.php =================================================================== --- trunk/adminer/database.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/database.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -2,6 +2,7 @@ if ($_POST && !$error && !isset($_POST["add_x"])) { // add is an image and PHP changes add.x to add_x if (DB !== $_POST["name"]) { // create or rename database + restart_session(); unset($_SESSION["databases"][$_GET["server"]]); // clear cache $dbs = explode("\n", str_replace("\r", "", $_POST["name"])); $failed = false; @@ -15,6 +16,7 @@ } } if (query_redirect(queries(), ME . "db=" . urlencode($last), lang('Database has been created.'), !strlen(DB), false, $failed)) { + //! move triggers $result = $connection->query("SHOW TABLES"); while ($row = $result->fetch_row()) { if (!queries("RENAME TABLE " . idf_escape($row[0]) . " TO " . idf_escape($_POST["name"]) . "." . idf_escape($row[0]))) { Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/include/adminer.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -358,7 +358,7 @@ * @return string */ function messageQuery($query) { - session_start(); + restart_session(); $id = "sql-" . count($_SESSION["messages"]); $_SESSION["history"][$_GET["server"]][DB][] = $query; return " <a href='#$id' onclick=\"return !toggle('$id');\">" . lang('SQL command') . "</a><div id='$id' class='hidden'><pre class='jush-sql'>" . shorten_utf8($query, 1000) . '</pre><a href="' . h(ME . 'sql=&history=' . (count($_SESSION["history"][$_GET["server"]][DB]) - 1)) . '">' . lang('Edit') . '</a></div>'; Modified: trunk/adminer/include/bootstrap.inc.php =================================================================== --- trunk/adminer/include/bootstrap.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/include/bootstrap.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -92,8 +92,8 @@ include "./include/export.inc.php"; session_cache_limiter(""); // to allow restarting session -if (@ini_set("session.use_cookies", false) !== false) { // @ - may be disabled - session_write_close(); // improves concurrency, may be restarted later +if (!ini_get("session.use_cookies") || @ini_set("session.use_cookies", false) !== false) { // @ - may be disabled + session_write_close(); // improves concurrency if a user opens several pages at once, may be restarted later } $confirm = " onclick=\"return confirm('" . lang('Are you sure?') . "');\""; Modified: trunk/adminer/include/design.inc.php =================================================================== --- trunk/adminer/include/design.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/include/design.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -52,10 +52,6 @@ if (strlen(DB) && $databases && !in_array(DB, $databases, true)) { $databases = null; } - if ((isset($databases) && !isset($_GET["sql"])) || !ini_get("session.use_cookies")) { - // improves concurrency if a user opens several pages at once - session_write_close(); - } if ($error) { echo "<div class='error'>$error</div>\n"; } Modified: trunk/adminer/include/editing.inc.php =================================================================== --- trunk/adminer/include/editing.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/include/editing.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -351,7 +351,7 @@ $dropped = strlen($name) && ($_POST["dropped"] || queries($drop)); $created = queries($create); if (!queries_redirect($location, (strlen($name) ? $message_alter : $message_create), $created) && $dropped) { - session_start(); + restart_session(); $_SESSION["messages"][] = $message_drop; } return $dropped; Modified: trunk/adminer/include/functions.inc.php =================================================================== --- trunk/adminer/include/functions.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/include/functions.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -220,7 +220,7 @@ */ function redirect($location, $message = null) { if (isset($message)) { - session_start(); + restart_session(); $_SESSION["messages"][] = $message; } header("Location: " . (strlen($location) ? $location : ".")); Modified: trunk/adminer/sql.inc.php =================================================================== --- trunk/adminer/sql.inc.php 2009-11-02 23:14:37 UTC (rev 1226) +++ trunk/adminer/sql.inc.php 2009-11-03 10:55:57 UTC (rev 1227) @@ -1,4 +1,5 @@ <?php +restart_session(); $history = &$_SESSION["history"][$_GET["server"]][DB]; if (!$error && $_POST["clear"]) { $history = array(); @@ -27,7 +28,7 @@ $space = "(\\s|/\\*.*\\*/|(#|-- )[^\n]*\n|--\n)"; $alter_database = "(CREATE|DROP)$space+(DATABASE|SCHEMA)\\b~isU"; $databases = &$_SESSION["databases"][$_GET["server"]]; - if ((isset($databases) && !preg_match("~\\b$alter_database", $query)) || !ini_get("session.use_cookies")) { // quick check - may be inside string + if (!ini_get("session.use_cookies") || (isset($databases) && !preg_match("~\\b$alter_database", $query))) { // quick check - may be inside string //! false positive with $fp and disabled ini_set() and enabled session.use_cookies session_write_close(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-11-19 20:05:02
|
Revision: 1246 http://adminer.svn.sourceforge.net/adminer/?rev=1246&view=rev Author: jakubvrana Date: 2009-11-19 20:04:55 +0000 (Thu, 19 Nov 2009) Log Message: ----------- Allow dropping remote foreign key Modified Paths: -------------- trunk/adminer/foreign.inc.php trunk/adminer/table.inc.php Modified: trunk/adminer/foreign.inc.php =================================================================== --- trunk/adminer/foreign.inc.php 2009-11-19 09:29:06 UTC (rev 1245) +++ trunk/adminer/foreign.inc.php 2009-11-19 20:04:55 UTC (rev 1246) @@ -43,6 +43,7 @@ <form action="" method="post"> <p> +<?php if (!strlen($row["db"])) { ?> <?php echo lang('Target table'); ?>: <?php echo html_select("table", array_keys(table_status_referencable()), $row["table"], "this.form['change-js'].value = '1'; this.form.submit();"); ?> <input type="hidden" name="change-js" value=""> @@ -64,8 +65,9 @@ <?php echo lang('ON DELETE'); ?>: <?php echo html_select("on_delete", array(-1 => "") + $on_actions, $row["on_delete"]); ?> <?php echo lang('ON UPDATE'); ?>: <?php echo html_select("on_update", array(-1 => "") + $on_actions, $row["on_update"]); ?> <p> -<input type="hidden" name="token" value="<?php echo $token; ?>"> <input type="submit" value="<?php echo lang('Save'); ?>"> +<noscript><p><input type="submit" name="add" value="<?php echo lang('Add column'); ?>"></noscript> +<?php } ?> <?php if (strlen($_GET["name"])) { ?><input type="submit" name="drop" value="<?php echo lang('Drop'); ?>"<?php echo $confirm; ?>><?php } ?> -<noscript><p><input type="submit" name="add" value="<?php echo lang('Add column'); ?>"></noscript> +<input type="hidden" name="token" value="<?php echo $token; ?>"> </form> Modified: trunk/adminer/table.inc.php =================================================================== --- trunk/adminer/table.inc.php 2009-11-19 09:29:06 UTC (rev 1245) +++ trunk/adminer/table.inc.php 2009-11-19 20:04:55 UTC (rev 1246) @@ -49,7 +49,7 @@ echo "<th><i>" . implode("</i>, <i>", array_map('h', $foreign_key["source"])) . "</i>"; echo "<td><a href='" . h(strlen($foreign_key["db"]) ? preg_replace('~db=[^&]*~', "db=" . urlencode($foreign_key["db"]), ME) : ME) . "table=" . urlencode($foreign_key["table"]) . "'>$link</a>"; echo "(<em>" . implode("</em>, <em>", array_map('h', $foreign_key["target"])) . "</em>)"; - echo "<td>" . (!strlen($foreign_key["db"]) ? '<a href="' . h(ME . 'foreign=' . urlencode($TABLE) . '&name=' . urlencode($name)) . '">' . lang('Alter') . '</a>' : ' '); + echo '<td><a href="' . h(ME . 'foreign=' . urlencode($TABLE) . '&name=' . urlencode($name)) . '">' . lang('Alter') . '</a>'; } echo "</table>\n"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-11-24 09:44:39
|
Revision: 1251 http://adminer.svn.sourceforge.net/adminer/?rev=1251&view=rev Author: jakubvrana Date: 2009-11-24 09:44:28 +0000 (Tue, 24 Nov 2009) Log Message: ----------- Highlight current link Modified Paths: -------------- trunk/adminer/include/adminer.inc.php trunk/adminer/table.inc.php Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-11-21 09:08:52 UTC (rev 1250) +++ trunk/adminer/include/adminer.inc.php 2009-11-24 09:44:28 UTC (rev 1251) @@ -68,21 +68,23 @@ /** Print links after select heading * @param array result of SHOW TABLE STATUS - * @param strin new item options, NULL for no new item + * @param string new item options, NULL for no new item * @return null */ function selectLinks($tableStatus, $set = "") { - $TABLE = $tableStatus["Name"]; - echo '<p class="tabs"><a href="' . h(ME) . 'select=' . urlencode($TABLE) . '">' . lang('Select table') . '</a>'; - echo ' <a href="' . h(ME) . 'table=' . urlencode($TABLE) . '">' . lang('Table structure') . '</a>'; + echo '<p class="tabs">'; + $links = array("select" => lang('Select table'), "table" => lang('Table structure')); if (isset($tableStatus["Rows"])) { - echo ' <a href="' . h(ME) . 'create=' . urlencode($TABLE) . '">' . lang('Alter table') . '</a>'; + $links["create"] = lang('Alter table'); } else { - echo ' <a href="' . h(ME) . 'view=' . urlencode($TABLE) . '">' . lang('Alter view') . '</a>'; + $links["view"] = lang('Alter view'); } if (isset($set)) { - echo ' <a href="' . h(ME . 'edit=' . urlencode($TABLE) . $set) . '">' . lang('New item') . '</a>'; + $links["edit"] = lang('New item'); } + foreach ($links as $key => $val) { + echo " <a href='" . h(ME) . "$key=" . urlencode($tableStatus["Name"]) . ($key == "edit" ? $set : "") . "'>" . (isset($_GET[$key]) ? "<b>$val</b>" : $val) . "</a>"; + } echo "\n"; } Modified: trunk/adminer/table.inc.php =================================================================== --- trunk/adminer/table.inc.php 2009-11-21 09:08:52 UTC (rev 1250) +++ trunk/adminer/table.inc.php 2009-11-24 09:44:28 UTC (rev 1251) @@ -5,10 +5,9 @@ $error = h($connection->error); } $table_status = ($fields ? table_status($TABLE) : array()); -$is_view = !isset($table_status["Rows"]); -page_header(($fields && $is_view ? lang('View') : lang('Table')) . ": " . h($TABLE), $error); -$adminer->selectLinks($table_status, $is_view ? null : ""); +page_header(($fields && !isset($table_status["Rows"]) ? lang('View') : lang('Table')) . ": " . h($TABLE), $error); +$adminer->selectLinks($table_status); if ($fields) { echo "<table cellspacing='0'>\n"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-11-27 13:44:55
|
Revision: 1257 http://adminer.svn.sourceforge.net/adminer/?rev=1257&view=rev Author: jakubvrana Date: 2009-11-27 13:44:44 +0000 (Fri, 27 Nov 2009) Log Message: ----------- Change table operations descriptions Modified Paths: -------------- trunk/adminer/include/adminer.inc.php trunk/adminer/lang/cs.inc.php trunk/adminer/lang/de.inc.php trunk/adminer/lang/es.inc.php trunk/adminer/lang/et.inc.php trunk/adminer/lang/fr.inc.php trunk/adminer/lang/it.inc.php trunk/adminer/lang/nl.inc.php trunk/adminer/lang/ru.inc.php trunk/adminer/lang/sk.inc.php trunk/adminer/lang/zh-tw.inc.php trunk/adminer/lang/zh.inc.php Modified: trunk/adminer/include/adminer.inc.php =================================================================== --- trunk/adminer/include/adminer.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/include/adminer.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -73,7 +73,7 @@ */ function selectLinks($tableStatus, $set = "") { echo '<p class="tabs">'; - $links = array("select" => lang('Select table'), "table" => lang('Table structure')); + $links = array("select" => lang('Select data'), "table" => lang('Show structure')); if (isset($tableStatus["Rows"])) { $links["create"] = lang('Alter table'); } else { Modified: trunk/adminer/lang/cs.inc.php =================================================================== --- trunk/adminer/lang/cs.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/cs.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -197,8 +197,8 @@ '%d row(s) have been imported.' => array('Byl importován %d záznam.', 'Byly importovány %d záznamy.', 'Bylo importováno %d záznamů.'), 'CSV Import' => 'Import CSV', 'Import' => 'Import', - 'Table structure' => 'Struktura tabulky', - 'Select table' => 'Vypsat tabulku', + 'Show structure' => 'Zobrazit strukturu', + 'Select data' => 'Vypsat data', 'Stop on error' => 'Zastavit při chybě', 'Maximum number of allowed fields exceeded. Please increase %s and %s.' => 'Byl překročen maximální povolený počet polí. Zvyšte prosím %s a %s.', '(anywhere)' => '(kdekoliv)', Modified: trunk/adminer/lang/de.inc.php =================================================================== --- trunk/adminer/lang/de.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/de.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Name der Partition', 'Values' => 'Werte', '%d row(s) have been imported.' => array('%d Datensatz importiert.', '%d Datensätze wurden importiert.'), - 'Table structure' => 'Tabellenstruktur', + 'Show structure' => 'Tabellenstruktur', '(anywhere)' => '(beliebig)', 'CSV Import' => 'Importiere CSV', 'Import' => 'Importieren', 'Stop on error' => 'Bei Fehler anhaltan', - 'Select table' => 'Tabelle auswählen', + 'Select data' => 'Tabelle auswählen', '%.3f s' => '%.3f s', '$1-$3-$5' => '$6.$4.$1', '[yyyy]-mm-dd' => 't.m.[jjjj]', Modified: trunk/adminer/lang/es.inc.php =================================================================== --- trunk/adminer/lang/es.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/es.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Nombre de Partición', 'Values' => 'Valores', '%d row(s) have been imported.' => array('%d registro importado.', '%d registros importados.'), - 'Table structure' => 'Información de la Tabla', + 'Show structure' => 'Información de la Tabla', '(anywhere)' => '(donde sea)', 'CSV Import' => 'Importar CSV', 'Import' => 'Importar', 'Stop on error' => 'Parar en caso de error', - 'Select table' => 'Mostrar datos', + 'Select data' => 'Mostrar datos', '%.3f s' => '%.3f s', '$1-$3-$5' => '$5/$3/$1', '[yyyy]-mm-dd' => 'dd/mm/[aaaa]', Modified: trunk/adminer/lang/et.inc.php =================================================================== --- trunk/adminer/lang/et.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/et.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Partitsiooni nimi', 'Values' => 'Väärtused', '%d row(s) have been imported.' => array('Imporditi %d rida.', 'Imporditi %d rida.'), - 'Table structure' => 'Tabeli struktuur', + 'Show structure' => 'Tabeli struktuur', '(anywhere)' => '(vahet pole)', 'CSV Import' => 'Impordi CSV', 'Import' => 'Impordi', 'Stop on error' => 'Peatuda vea esinemisel', - 'Select table' => 'Vali tabel', + 'Select data' => 'Vali tabel', '%.3f s' => '%.3f s', '$1-$3-$5' => '$6.$4.$1', '[yyyy]-mm-dd' => 'd.m.[yyyy]', Modified: trunk/adminer/lang/fr.inc.php =================================================================== --- trunk/adminer/lang/fr.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/fr.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Nom de la partition', 'Values' => 'Valeurs', '%d row(s) have been imported.' => array('%d ligne a été importé','%d lignes ont été importé'), - 'Table structure' => 'Structure de la table', + 'Show structure' => 'Structure de la table', '(anywhere)' => '(n\'importe où)', 'CSV Import' => 'Importation CVS', 'Import' => 'Importer', 'Stop on error' => 'Arrêt sur erreur', - 'Select table' => 'Selectionner la table', + 'Select data' => 'Selectionner la table', '%.3f s' => '%.3f s', '$1-$3-$5' => '$5/$3/$1', '[yyyy]-mm-dd' => 'jj/mm/[aaaa]', Modified: trunk/adminer/lang/it.inc.php =================================================================== --- trunk/adminer/lang/it.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/it.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Nome partizione', 'Values' => 'Valori', '%d row(s) have been imported.' => array('%d riga importata.','%d righe importate.'), - 'Table structure' => 'Struttura tabella', + 'Show structure' => 'Struttura tabella', '(anywhere)' => '(ovunque)', 'CSV Import' => 'Importa da CSV', 'Import' => 'Importa', 'Stop on error' => 'Stop su errore', - 'Select table' => 'Scegli tabella', + 'Select data' => 'Scegli tabella', '%.3f s' => '%.3f s', '$1-$3-$5' => '$5/$3/$1', '[yyyy]-mm-dd' => 'dd/mm/[yyyy]', Modified: trunk/adminer/lang/nl.inc.php =================================================================== --- trunk/adminer/lang/nl.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/nl.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => 'Partitie naam', 'Values' => 'Waarden', '%d row(s) have been imported.' => array('%d rij werd geïmporteerd.', '%d rijen werden geïmporteerd.'), - 'Table structure' => 'Tabelstructuur', + 'Show structure' => 'Tabelstructuur', '(anywhere)' => '(overal)', 'CSV Import' => 'CSV Import', 'Import' => 'Importeren', 'Stop on error' => 'Stoppen bij fout', - 'Select table' => 'Selecteer tabel', + 'Select data' => 'Selecteer tabel', '%.3f s' => '%.3f s', '$1-$3-$5' => '$5-$3-$1', '[yyyy]-mm-dd' => 'dd-mm-[jjjj]', Modified: trunk/adminer/lang/ru.inc.php =================================================================== --- trunk/adminer/lang/ru.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/ru.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -197,8 +197,8 @@ '%d row(s) have been imported.' => array('Импортирована %d строка.', 'Импортировано %d строки.', 'Импортировано %d строк.'), 'CSV Import' => 'Импорт CSV', 'Import' => 'Импорт', - 'Table structure' => 'Структура таблицы', - 'Select table' => 'Выбрать данные из таблицы', + 'Show structure' => 'Структура таблицы', + 'Select data' => 'Выбрать данные из таблицы', 'Stop on error' => 'Остановить при ошибке', 'Maximum number of allowed fields exceeded. Please increase %s and %s.' => 'Достигнуто максимальное значение количества доступных полей. Увеличьте %s и %s.', '(anywhere)' => '(в любом месте)', Modified: trunk/adminer/lang/sk.inc.php =================================================================== --- trunk/adminer/lang/sk.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/sk.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -197,8 +197,8 @@ '%d row(s) have been imported.' => array('Bol importovaný %d záznam.', 'Boli importované %d záznamy.', 'Bolo importovaných %d záznamov.'), 'CSV Import' => 'Import CSV', 'Import' => 'Import', - 'Table structure' => 'Štruktúra tabuľky', - 'Select table' => 'Vypísať tabuľku', + 'Show structure' => 'Štruktúra tabuľky', + 'Select data' => 'Vypísať tabuľku', 'Stop on error' => 'Zastaviť pri chybe', 'Maximum number of allowed fields exceeded. Please increase %s and %s.' => 'Bol prekročený maximálny počet povolených polí. Zvýšte prosím %s a %s.', '(anywhere)' => '(kdekoľvek)', Modified: trunk/adminer/lang/zh-tw.inc.php =================================================================== --- trunk/adminer/lang/zh-tw.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/zh-tw.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => '分區名', 'Values' => '值', '%d row(s) have been imported.' => '%d行已導入。', - 'Table structure' => '資料表結構', + 'Show structure' => '資料表結構', '(anywhere)' => '(任意位置)', 'CSV Import' => '匯入 CSV', 'Import' => '匯入', 'Stop on error' => '出錯時停止', - 'Select table' => '選擇資料表', + 'Select data' => '選擇資料表', '%.3f s' => '%.3f秒', '$1-$3-$5' => '$1.$3.$5', '[yyyy]-mm-dd' => '[yyyy].mm.dd', Modified: trunk/adminer/lang/zh.inc.php =================================================================== --- trunk/adminer/lang/zh.inc.php 2009-11-26 15:57:21 UTC (rev 1256) +++ trunk/adminer/lang/zh.inc.php 2009-11-27 13:44:44 UTC (rev 1257) @@ -196,12 +196,12 @@ 'Partition name' => '分区名', 'Values' => '值', '%d row(s) have been imported.' => '%d 行已导入。', - 'Table structure' => '表结构', + 'Show structure' => '表结构', '(anywhere)' => '(任意位置)', 'CSV Import' => 'CSV 导入', 'Import' => '导入', 'Stop on error' => '出错时停止', - 'Select table' => '选择表', + 'Select data' => '选择表', '%.3f s' => '%.3f 秒', '$1-$3-$5' => '$1.$3.$5', '[yyyy]-mm-dd' => '[yyyy].mm.dd', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |