2007-07-16 23:08:24 +00:00
|
|
|
<?php
|
|
|
|
$routine = (isset($_GET["function"]) ? "FUNCTION" : "PROCEDURE");
|
|
|
|
|
|
|
|
if ($_POST && !$error) {
|
|
|
|
if (strlen($_GET["procedure"]) && $mysql->query("DROP $routine " . idf_escape($_GET["procedure"])) && $_POST["drop"]) {
|
|
|
|
redirect(substr($SELF, 0, -1), lang('Routine has been dropped.'));
|
|
|
|
}
|
|
|
|
if (!$_POST["drop"]) {
|
|
|
|
$set = array();
|
|
|
|
ksort($_POST["fields"]);
|
|
|
|
foreach ($_POST["fields"] as $field) {
|
2007-07-17 05:31:45 +00:00
|
|
|
$set[] = idf_escape($field["field"]) . process_type($field, "CHARACTER SET");
|
2007-07-16 23:08:24 +00:00
|
|
|
}
|
|
|
|
if ($mysql->query(
|
|
|
|
"CREATE $routine " . idf_escape($_POST["name"])
|
|
|
|
. " (" . implode(", ", $set) . ")"
|
2007-07-17 05:31:45 +00:00
|
|
|
. (isset($_GET["function"]) ? " RETURNS" . process_type($_POST["returns"], "CHARACTER SET") : "") . "
|
2007-07-16 23:08:24 +00:00
|
|
|
$_POST[definition]"
|
|
|
|
)) {
|
|
|
|
redirect(substr($SELF, 0, -1), (strlen($_GET["createp"]) ? lang('Routine has been altered.') : lang('Routine has been created.')));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
$collations = get_vals("SHOW CHARACTER SETS");
|
|
|
|
?>
|
|
|
|
<table border="0" cellspacing="0" cellpadding="2">
|
|
|
|
<tr><th><?php echo lang('Return type'); ?></th><?php echo edit_type("returns", $row["returns"], $collations); ?></tr>
|
|
|
|
</table>
|
|
|
|
<?php echo type_change(count($row["fields"])); ?>
|
|
|
|
<?php if (isset($_GET["function"])) { ?>
|
|
|
|
<script type="text/javascript">
|
|
|
|
document.getElementById('form')['returns[type]'].onchange();
|
|
|
|
</script>
|
|
|
|
<?php } ?>
|