SQL command by AJAX

This commit is contained in:
Jakub Vrana 2010-10-18 23:44:00 +02:00
parent 6e3c7cba1f
commit d9fbb905f3
2 changed files with 7 additions and 5 deletions

View file

@ -18,7 +18,7 @@ if (!$error && $_POST) {
: "compress.bzip2://adminer.sql.bz2" : "compress.bzip2://adminer.sql.bz2"
)), "rb"); )), "rb");
$query = ($fp ? fread($fp, 1e6) : false); $query = ($fp ? fread($fp, 1e6) : false);
} elseif ($_FILES["sql_file"]["error"] != 4) { // 4 - UPLOAD_ERR_NO_FILE } elseif ($_FILES["sql_file"] && $_FILES["sql_file"]["error"] != 4) { // 4 - UPLOAD_ERR_NO_FILE
$query = get_file("sql_file", true); $query = get_file("sql_file", true);
} }
if (is_string($query)) { // get_file() returns error as number, fread() as false if (is_string($query)) { // get_file() returns error as number, fread() as false
@ -126,9 +126,11 @@ if (!$error && $_POST) {
echo "<p class='error'>" . upload_error($query) . "\n"; echo "<p class='error'>" . upload_error($query) . "\n";
} }
} }
$uploads = ini_bool("file_uploads");
?> ?>
<form action="" method="post" enctype="multipart/form-data"> <form action="" method="post" enctype="multipart/form-data" onsubmit="return <?php echo ($uploads ? "this['sql_file'].value || " : ""); ?>!ajaxForm(this);">
<p><?php <p><?php
$q = $_GET["sql"]; // overwrite $q from if ($_POST) to save memory $q = $_GET["sql"]; // overwrite $q from if ($_POST) to save memory
if ($_POST) { if ($_POST) {
@ -138,7 +140,7 @@ if ($_POST) {
} }
textarea("query", $q, 20); textarea("query", $q, 20);
echo ($_POST ? "" : "<script type='text/javascript'>document.getElementsByTagName('textarea')[0].focus();</script>\n"); echo ($_POST ? "" : "<script type='text/javascript'>document.getElementsByTagName('textarea')[0].focus();</script>\n");
echo "<p>" . (ini_bool("file_uploads") ? lang('File upload') . ': <input type="file" name="sql_file">' : lang('File uploads are disabled.')); echo "<p>" . ($uploads ? lang('File upload') . ': <input type="file" name="sql_file">' : lang('File uploads are disabled.'));
?> ?>
<p> <p>
@ -155,7 +157,7 @@ foreach (array("gz" => "zlib", "bz2" => "bz2") as $key => $val) {
} }
} }
echo lang('Webserver file %s', "<code>adminer.sql" . ($compress ? "[" . implode("|", $compress) . "]" : "") . "</code>"); echo lang('Webserver file %s', "<code>adminer.sql" . ($compress ? "[" . implode("|", $compress) . "]" : "") . "</code>");
echo ' <input type="submit" name="webfile" value="' . lang('Run file') . '">'; echo ' <input type="submit" name="webfile" value="' . lang('Run file') . '" onclick="return !ajaxForm(this.form, \'webfile=1\');">';
echo "</div></fieldset>\n"; echo "</div></fieldset>\n";
if ($history) { if ($history) {

View file

@ -154,7 +154,7 @@ function textareaKeydown(target, event, tab, button) {
if (event.ctrlKey && (event.keyCode == 13 || event.keyCode == 10) && !event.altKey && !event.metaKey) { // shiftKey allowed if (event.ctrlKey && (event.keyCode == 13 || event.keyCode == 10) && !event.altKey && !event.metaKey) { // shiftKey allowed
if (button) { if (button) {
button.click(); button.click();
} else { } else if (!target.form.onsubmit || target.form.onsubmit() !== false) {
target.form.submit(); target.form.submit();
} }
} }