diff --git a/adminer/edit.inc.php b/adminer/edit.inc.php
index 08892e94..49849681 100644
--- a/adminer/edit.inc.php
+++ b/adminer/edit.inc.php
@@ -84,9 +84,15 @@ if (!$fields) {
foreach ($fields as $name => $field) {
echo "
" . $adminer->fieldName($field);
$default = $_GET["set"][bracket_escape($name)];
+ if ($default === null) {
+ $default = $field["default"];
+ if ($field["type"] == "bit" && ereg("^b'([01]*)'\$", $default, $regs)) {
+ $default = $regs[1];
+ }
+ }
$value = ($row !== null
? ($row[$name] != "" && $jush == "sql" && ereg("enum|set", $field["type"]) ? (is_array($row[$name]) ? array_sum($row[$name]) : +$row[$name]) : $row[$name])
- : (!$update && $field["auto_increment"] ? "" : (isset($_GET["select"]) ? false : ($default !== null ? $default : $field["default"])))
+ : (!$update && $field["auto_increment"] ? "" : (isset($_GET["select"]) ? false : $default))
);
if (!$_POST["save"] && is_string($value)) {
$value = $adminer->editVal($value, $field);
diff --git a/adminer/include/adminer.inc.php b/adminer/include/adminer.inc.php
index b88b648c..0a92e068 100644
--- a/adminer/include/adminer.inc.php
+++ b/adminer/include/adminer.inc.php
@@ -545,7 +545,7 @@ username.form['auth[driver]'].onchange();
return $value; // SQL injection
}
$name = $field["field"];
- $return = ($field["type"] == "bit" && ereg("^([0-9]+|b'[0-1]+')\$", $value) ? $value : q($value));
+ $return = q($value);
if (ereg('^(now|getdate|uuid)$', $function)) {
$return = "$function()";
} elseif (ereg('^current_(date|timestamp)$', $function)) {
|
---|