91 lines
2.8 KiB
PHP
91 lines
2.8 KiB
PHP
<?php
|
|
|
|
function initializeTableArray($initTableName, $values = array()) {
|
|
global $school_num, $schedule_num, $menu_num;
|
|
|
|
$tableArray = array();
|
|
|
|
if (!isset($initTableName) || strlen($initTableName) == 0) return($tableArray);
|
|
|
|
$query = "SHOW columns FROM $initTableName";
|
|
$initResults = db_query($query);
|
|
|
|
if (db_num_rows($initResults)) {
|
|
|
|
while ($initRow = db_fetch_assoc($initResults)) {
|
|
$initField = $initRow['Field'];
|
|
$initType = $initRow['Type'];
|
|
$initDefault = $initRow['Default'];
|
|
|
|
if (is_array($values) && count($values) > 0 && array_key_exists($initField, $values)) {
|
|
$tableArray[$initField] = $values[$initField];
|
|
}
|
|
else {
|
|
|
|
$initType = preg_replace("/\(.*/","",$initType);
|
|
|
|
switch ($initType) {
|
|
case 'int':
|
|
case 'int unsigned':
|
|
case 'smallint':
|
|
case 'smallint unsigned':
|
|
case 'bigint':
|
|
case 'bigint unsigned':
|
|
if ($initDefault == 'NULL') $initDefault = '0';
|
|
if ($initDefault == '') $initDefault = '0';
|
|
if ($initField == 'school_num' && isset($school_num)) $initDefault = $school_num;
|
|
if ($initField == 'schedule_num' && isset($schedule_num)) $initDefault = $schedule_num;
|
|
if ($initField == 'menu_num' && isset($menu_num)) $initDefault = $menu_num;
|
|
|
|
$tableArray[$initField] = $initDefault;
|
|
break;
|
|
|
|
case 'decimal':
|
|
if ($initDefault == 'NULL') $initDefault = '0.0';
|
|
if ($initDefault == '') $initDefault = '0.0';
|
|
|
|
$tableArray[$initField] = $initDefault;
|
|
break;
|
|
|
|
case 'enum':
|
|
case 'varchar':
|
|
case 'char':
|
|
if ($initDefault == 'NULL') $initDefault = '';
|
|
|
|
$tableArray[$initField] = $initDefault;
|
|
break;
|
|
|
|
default:
|
|
if ($initDefault == 'NULL') $initDefault = '';
|
|
|
|
switch ($initField) {
|
|
case 'added_date':
|
|
case 'updated_date':
|
|
case 'date_modified':
|
|
$initDefault = date("Y-m-d", time());
|
|
break;
|
|
|
|
case 'added_time':
|
|
$initDefault = date("Y-m-d H:i:s",time());
|
|
break;
|
|
|
|
case 'record_num':
|
|
$initDefault = 0;
|
|
break;
|
|
|
|
default:
|
|
break;
|
|
}
|
|
|
|
$tableArray[$initField] = $initDefault;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return($tableArray);
|
|
}
|
|
|
|
?>
|