merge Loic's version
This commit is contained in:
212
tbl_create.php3
212
tbl_create.php3
@@ -2,108 +2,146 @@
|
||||
/* $Id$ */
|
||||
|
||||
|
||||
require("./grab_globals.inc.php3");
|
||||
|
||||
require("./header.inc.php3");
|
||||
/**
|
||||
* Get some core libraries
|
||||
*/
|
||||
require('./grab_globals.inc.php3');
|
||||
require('./header.inc.php3');
|
||||
|
||||
|
||||
/**
|
||||
* Selects the database to work with
|
||||
*/
|
||||
mysql_select_db($db);
|
||||
|
||||
if(isset($submit))
|
||||
{
|
||||
if(!isset($query))
|
||||
$query = "";
|
||||
for($i=0; $i<count($field_name); $i++)
|
||||
{
|
||||
if (empty($field_name[$i])) {
|
||||
continue;
|
||||
|
||||
/**
|
||||
* The form used to define the structure of the table has been submitted
|
||||
*/
|
||||
if (isset($submit)) {
|
||||
if (!isset($query)) {
|
||||
$query = '';
|
||||
}
|
||||
|
||||
// Builds the fields creation statements
|
||||
for ($i = 0; $i < count($field_name); $i++) {
|
||||
if (empty($field_name[$i])) {
|
||||
continue;
|
||||
}
|
||||
$query .= "$field_name[$i] $field_type[$i] ";
|
||||
if($field_length[$i] != "")
|
||||
if(get_magic_quotes_gpc()) {
|
||||
$query .= "(".stripslashes($field_length[$i]).") ";
|
||||
} else {
|
||||
$query .= "(".($field_length[$i]).") ";
|
||||
}
|
||||
if($field_attribute[$i] != "")
|
||||
$query .= "$field_attribute[$i] ";
|
||||
if($field_default[$i] != "")
|
||||
if(get_magic_quotes_gpc()) {
|
||||
$query .= "DEFAULT '".stripslashes($field_default[$i])."' ";
|
||||
} else {
|
||||
$query .= "DEFAULT '".($field_default[$i])."' ";
|
||||
}
|
||||
$query .= "$field_null[$i] $field_extra[$i], ";
|
||||
$query .= backquote($field_name[$i]) . ' ' . $field_type[$i];
|
||||
if ($field_length[$i] != '') {
|
||||
if (get_magic_quotes_gpc()) {
|
||||
$query .= '(' . stripslashes($field_length[$i]) . ')';
|
||||
} else {
|
||||
$query .= '(' . $field_length[$i] . ')';
|
||||
}
|
||||
}
|
||||
if ($field_attribute[$i] != '') {
|
||||
$query .= ' ' . $field_attribute[$i];
|
||||
}
|
||||
if ($field_default[$i] != '') {
|
||||
if (get_magic_quotes_gpc()) {
|
||||
$query .= ' DEFAULT \'' . sql_addslashes(stripslashes($field_default[$i])) . '\'';
|
||||
} else {
|
||||
$query .= ' DEFAULT \'' . sql_addslashes($field_default[$i]) . '\'';
|
||||
}
|
||||
}
|
||||
if ($field_null[$i] != '') {
|
||||
$query .= ' ' . $field_null[$i];
|
||||
}
|
||||
if ($field_extra[$i] != '') {
|
||||
$query .= ' ' . $field_extra[$i] . ', ';
|
||||
} else {
|
||||
$query .= ', ';
|
||||
}
|
||||
} // end for
|
||||
$query = ereg_replace(', $', '', $query);
|
||||
|
||||
// Builds the primary keys statements
|
||||
if (!isset($primary)) {
|
||||
$primary = '';
|
||||
}
|
||||
$query = ereg_replace(", $", "", $query);
|
||||
|
||||
if(!isset($primary))
|
||||
$primary = "";
|
||||
|
||||
if(!isset($field_primary))
|
||||
if (!isset($field_primary)) {
|
||||
$field_primary = array();
|
||||
|
||||
for($i=0;$i<count($field_primary);$i++)
|
||||
{
|
||||
}
|
||||
for ($i = 0; $i < count($field_primary); $i++) {
|
||||
$j = $field_primary[$i];
|
||||
if (!empty($field_name[$j]))
|
||||
$primary .= "$field_name[$j], ";
|
||||
if (!empty($field_name[$j])) {
|
||||
$primary .= backquote($field_name[$j]) . ', ';
|
||||
}
|
||||
} // end for
|
||||
$primary = ereg_replace(', $', '', $primary);
|
||||
if (!empty($primary)) {
|
||||
$primary = ', PRIMARY KEY (' . $primary . ')';
|
||||
}
|
||||
$primary = ereg_replace(", $", "", $primary);
|
||||
if(count($field_primary) > 0)
|
||||
$primary = ", PRIMARY KEY ($primary)";
|
||||
|
||||
if(!isset($index))
|
||||
$index = "";
|
||||
|
||||
if(!isset($field_index))
|
||||
// Builds the indexes statements
|
||||
if (!isset($index)) {
|
||||
$index = '';
|
||||
}
|
||||
if (!isset($field_index)) {
|
||||
$field_index = array();
|
||||
|
||||
for($i=0;$i<count($field_index);$i++)
|
||||
{
|
||||
}
|
||||
for ($i = 0;$i < count($field_index); $i++) {
|
||||
$j = $field_index[$i];
|
||||
if (!empty($field_name[$j]))
|
||||
$index .= "$field_name[$j], ";
|
||||
if (!empty($field_name[$j])) {
|
||||
$index .= backquote($field_name[$j]) . ', ';
|
||||
}
|
||||
} // end for
|
||||
$index = ereg_replace(', $', '', $index);
|
||||
if (!empty($index)) {
|
||||
$index = ', INDEX (' . $index . ')';
|
||||
}
|
||||
$index = ereg_replace(", $", "", $index);
|
||||
// if(count($field_index) > 0)
|
||||
if(!empty($index))
|
||||
$index = ", INDEX ($index)";
|
||||
if(!isset($unique))
|
||||
$unique = "";
|
||||
|
||||
if(!isset($field_unique))
|
||||
// Builds the uniques statements
|
||||
if (!isset($unique)) {
|
||||
$unique = '';
|
||||
}
|
||||
if (!isset($field_unique)) {
|
||||
$field_unique = array();
|
||||
|
||||
for($i=0;$i<count($field_unique);$i++)
|
||||
{
|
||||
$j = $field_unique[$i];
|
||||
if (!empty($field_name[$j]))
|
||||
$unique .= "$field_name[$j], ";
|
||||
}
|
||||
$unique = ereg_replace(", $", "", $unique);
|
||||
// if(count($field_unique) > 0)
|
||||
if(!empty($unique))
|
||||
$unique = ", UNIQUE ($unique)";
|
||||
$query_keys = $primary.$index.$unique;
|
||||
$query_keys = ereg_replace(", $", "", $query_keys);
|
||||
for ($i = 0; $i < count($field_unique); $i++) {
|
||||
$j = $field_unique[$i];
|
||||
if (!empty($field_name[$j])) {
|
||||
$unique .= backquote($field_name[$j]) . ', ';
|
||||
}
|
||||
} // end for
|
||||
$unique = ereg_replace(', $', '', $unique);
|
||||
if (!empty($unique)) {
|
||||
$unique = ', UNIQUE (' . $unique . ')';
|
||||
}
|
||||
$query_keys = $primary . $index . $unique;
|
||||
$query_keys = ereg_replace(', $', '', $query_keys);
|
||||
|
||||
// echo "$query $query_keys";
|
||||
$sql_query = "CREATE TABLE ".$table." (".$query." ".$query_keys.")";
|
||||
//BEGIN - Table Type - 2 May 2001 - Robbat2
|
||||
if(!empty($tbl_type) && ($tbl_type != "Default"))
|
||||
$sql_query .= " TYPE = $tbl_type";
|
||||
//END - Table Type - 2 May 2001 - Robbat2
|
||||
if(MYSQL_MAJOR_VERSION == "3.23" && !empty($comment))
|
||||
$sql_query .= " comment = '$comment'";
|
||||
$result = mysql_query($sql_query) or mysql_die();
|
||||
$message = "$strTable $table $strHasBeenCreated";
|
||||
include("./tbl_properties.php3");
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$action = "tbl_create.php3";
|
||||
include("./tbl_properties.inc.php3");
|
||||
// Builds the 'create table' statement
|
||||
$sql_query = 'CREATE TABLE ' . backquote($table) . ' ('
|
||||
. $query . ' '
|
||||
. $query_keys . ')';
|
||||
// Adds table type (2 May 2001 - Robbat2)
|
||||
if (!empty($tbl_type) && ($tbl_type != 'Default')) {
|
||||
$sql_query .= ' TYPE = ' . $tbl_type;
|
||||
}
|
||||
if (MYSQL_MAJOR_VERSION == 3.23 && !empty($comment)) {
|
||||
$sql_query .= ' comment = \'' . sql_addslashes($comment) . '\'';
|
||||
}
|
||||
|
||||
// Executes the query
|
||||
$result = mysql_query($sql_query) or mysql_die();
|
||||
$message = $strTable . ' ' . htmlspecialchars($table) . ' ' . $strHasBeenCreated;
|
||||
include('./tbl_properties.php3');
|
||||
exit();
|
||||
} // end do create table
|
||||
|
||||
/**
|
||||
* Displays the form used to define the structure of the table
|
||||
*/
|
||||
else {
|
||||
$action = 'tbl_create.php3';
|
||||
include('./tbl_properties.inc.php3');
|
||||
|
||||
// Diplays the footer
|
||||
echo "\n";
|
||||
include('./footer.inc.php3');
|
||||
}
|
||||
|
||||
require("./footer.inc.php3");
|
||||
?>
|
||||
|
Reference in New Issue
Block a user