diff --git a/adminer/drivers/mysql.inc.php b/adminer/drivers/mysql.inc.php
index e395e4de..a563eca6 100644
--- a/adminer/drivers/mysql.inc.php
+++ b/adminer/drivers/mysql.inc.php
@@ -330,6 +330,13 @@ if (!defined('Adminer\DRIVER')) {
}
}
+ function unconvertFunction($field) {
+ return (preg_match("~binary~", $field["type"]) ? "UNHEX
"
+ : ($field["type"] == "bit" ? doc_link(array('sql' => 'bit-value-literals.html'), "b''
")
+ : (preg_match("~geometry|point|linestring|polygon~", $field["type"]) ? "GeomFromText
"
+ : "")));
+ }
+
function insert($table, $set) {
return ($set ? parent::insert($table, $set) : queries("INSERT INTO " . table($table) . " ()\nVALUES ()"));
}
diff --git a/adminer/include/driver.inc.php b/adminer/include/driver.inc.php
index 175b5f80..ae9289cf 100644
--- a/adminer/include/driver.inc.php
+++ b/adminer/include/driver.inc.php
@@ -66,6 +66,13 @@ abstract class SqlDriver {
function enumLength($field) {
}
+ /** Function used to convert the value inputted by user
+ * @param array
+ * @return string or null
+ */
+ function unconvertFunction($field) {
+ }
+
/** Select data from table
* @param string
* @param array result of $adminer->selectColumnsProcess()[0]
diff --git a/adminer/include/functions.inc.php b/adminer/include/functions.inc.php
index 1fa23657..8d8138bf 100644
--- a/adminer/include/functions.inc.php
+++ b/adminer/include/functions.inc.php
@@ -934,6 +934,7 @@ function input($field, $value, $function) {
$field["type"] = "enum";
$field["length"] = $enums;
}
+ echo $driver->unconvertFunction($field) . " ";
if ($field["type"] == "enum") {
echo h($functions[""]) . "