
Новичок
Профиль
Группа: Участник
Сообщений: 45
Регистрация: 17.4.2007
Где: Москва
Репутация: нет Всего: 1
|
Итак: есть ad_device.php| Код | <link rel="stylesheet" type="text/css" href="stylesheet.css"> <?php //echo var_dump($_POST); include ("top_script.php"); if($_POST['sel3'] <> "") { $query = "SELECT type_descr FROM location_types_sub_sub WHERE sub_type='" . $_POST['sel3'] . "'"; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $device_location = $query_data["type_descr"]; } } else { $query = "SELECT type_descr FROM location_types_sub WHERE sub_type='" . $_POST['sel2'] . "'"; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $device_location = $query_data["type_descr"]; } }
if($_POST['do_insert']) { $query = "INSERT " . TABLE_INVENTORY . " VALUES('', '$equip_type', '$device_type', '$device_model', '$device_serial', '$device_netname', '$device_ip', '$device_mac', '$device_location', '$device_eklznum', '$device_fiscdate', '$device_servipass', '$device_date_receive', '$device_status', '', '', '$device_comment', '$monitor_type', '$monitor_diagonal', '$telephone_type', '$keyboard_type', '$ports', '$term_id', '$autor_id', '$runtime')"; $result = mysql_query($query); } ?> <table border="0" width="90%" align="center"> <tr> <td width="25%" align="left" valign="top" class="productListing-heading"><b>Выберите тип оборудования:</b></td> <td valign="middle" align="left"> <form method="post" action="<?php echo $PHP_SELF; ?>"> <input type="hidden" name="action"> <select name="equip_type" size="1" onchange="this.form.submit();"> <?php echo "<option>--- Выбрать ---</option>" ; $query = "SELECT equip_type FROM " . TABLE_EQUIPMENT . ""; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $equip_type = $query_data["equip_type"]; echo "<option>$equip_type</option>" ; } ?> </select> </form> </td> </tr> </table><br><br><br> <?php $query = "SELECT equip_link FROM " . TABLE_EQUIPMENT . " WHERE equip_type='" . $_POST['equip_type'] . "'"; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $equip_link = $query_data["equip_link"]; } if ($equip_link <> "") { include(DIR_WS_MODULES . 'inventory/add/' . $equip_link . '.php'); } ?>
|
который в зависимости от выбранного значения из списка инклудит форму computer.php с ещё одним списком: | Код | <form method="post" action="<?php echo $PHP_SELF; ?>"> <input type="hidden" name="action"> <div align="center"><center><table border="0" width="90%"> <tr> <th width="30%"></th> <td width="70%" class="h2">Добавить оборудование:</td> </tr> <tr> <th width="30%">Тип оборудования</th> <td width="70%"><input name="equip_type" value="<?php echo $_POST['equip_type'];?>" size="45" readonly></td> </tr> <tr> <?php if($_POST['device_type'] <> "") { $query = "SELECT comp_link FROM $equip_link WHERE comp_type='" . $_POST['device_type'] . "'"; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $comp_link = $query_data["comp_link"]; } if ($comp_link <> "") { include(DIR_WS_MODULES . 'inventory/add/forms/' . $comp_link . '.php'); } } else { ?> <th width="30%">Тип устройства</th> <td width="70%"><select name="device_type" onchange="this.form.submit();"> <?php echo "<option>--- Выбрать ---</option>"; $query = "SELECT comp_type FROM $equip_link"; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $device_type = $query_data["comp_type"]; echo "<option>$device_type</option>"; } ?> </td> </tr> </table> </center> </div> </form> <?php } ?>
|
а эта форма, опять таки, в зависимости от выбранного значения, инклудит последнюю форму comp_pc.php: | Код | <tr> <th width="30%"></th> <td width="70%"><input name="device_type" value="<?php echo $_POST['device_type'];?>" size="45" readonly></td> </tr> <tr> <th width="30%">Модель устройства</th> <td width="70%"><input type="text" name="device_model" size="45"></td></td> </tr> <tr> <th width="30%">Серийный номер</th> <td width="70%"><input type="text" name="device_serial" size="45"></td> </tr> <tr> <th width="30%">Сетевое имя</th> <td width="70%"><input type="text" name="device_netname" size="45"></td> </tr> <tr> <th width="30%">IP адрес</th> <td width="70%"><input type="text" name="device_ip" size="45"></td> </tr> <tr> <th width="30%">Место установки</th> <td width="70%"><input type="hidden" name="sub_type"> <?php include ("location.php"); ?> </td> </tr> <tr> <th width="30%">Статус</th> <td width="70%" class="ch19"> <select name="device_status" size="1"> <?php echo "<option>--- Выбрать ---</option>" ; $query = "SELECT device_status FROM " . TABLE_STATUS . ""; $select = mysql_query($query); while($query_data = mysql_fetch_array($select)) { $device_status = $query_data["device_status"]; echo "<option>$device_status</option>" ; } ?> </select> </td> </tr> <tr> <th width="30%">Дата получения</th> <td width="70%" class="ch19"><input type="text" name="device_date_receive" size="45"> формат даты: YYYY-MM-DD</td> </tr> <tr> <th width="30%">Комментарий</th> <td width="70%"><textarea name="device_comment" cols="42" rows="2"></textarea></td> </tr> <tr> <th width="30%" colspan="2"> <!--input type="hidden" name="insert_base" value="add_base"--> <input type="submit" name="do_insert" value="Добавить"> <input type="reset" name="do_reset" value="Сбросить"> </th> </tr>
|
Эта форма заполняется и по нажатию кн. "Добавить" отправляет POST данные в первый ad_device.php, который и вставляет данные в базу. Вот только даже если просто выбрать форму и не заполнять, а нажать F5 или "Обновить", то данные опять вставляются в БД. Хотелось бы от этого избавиться. Вообще, наверное я всё сделал коряво. Подскажите плиз, как надо. Вот структура БД: | Код | -- phpMyAdmin SQL Dump -- version 2.10.1 -- http://www.phpmyadmin.net -- -- Хост: localhost -- Время создания: Май 18 2007 г., 12:37 -- Версия сервера: 5.0.6 -- Версия PHP: 4.4.4
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
-- -- База данных: `lmadmin` --
-- --------------------------------------------------------
-- -- Структура таблицы `computer` --
CREATE TABLE `computer` ( `id` int(10) unsigned NOT NULL auto_increment, `comp_type` varchar(65) NOT NULL default '', `comp_link` varchar(45) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COMMENT='компьютерное' AUTO_INCREMENT=5 ;
-- -- Дамп данных таблицы `computer` --
INSERT INTO `computer` VALUES (1, 'Системный блок', 'comp_pc'); INSERT INTO `computer` VALUES (2, 'Монитор', 'comp_mon'); INSERT INTO `computer` VALUES (3, 'Клавиатура', 'comp_keyb'); INSERT INTO `computer` VALUES (4, 'Сервер', 'comp_serv');
-- --------------------------------------------------------
-- -- Структура таблицы `equipment` --
CREATE TABLE `equipment` ( `id` int(10) unsigned NOT NULL auto_increment, `equip_type` varchar(45) NOT NULL default '', `equip_link` varchar(45) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COMMENT='оборудование' AUTO_INCREMENT=6 ;
-- -- Дамп данных таблицы `equipment` --
INSERT INTO `equipment` VALUES (1, 'Компьютерное', 'computer'); INSERT INTO `equipment` VALUES (2, 'Кассовое', 'cash'); INSERT INTO `equipment` VALUES (3, 'Офисное', 'office'); INSERT INTO `equipment` VALUES (4, 'Сетевое', 'net'); INSERT INTO `equipment` VALUES (5, 'Вспомогательное', 'auxiliary');
-- --------------------------------------------------------
-- -- Структура таблицы `inventory` --
CREATE TABLE `inventory` ( `id` int(11) NOT NULL auto_increment, `equipment_type` varchar(64) NOT NULL default '', `device_type` varchar(64) default NULL, `device_model` varchar(64) default NULL, `device_serial` varchar(64) default NULL, `device_netname` varchar(64) default NULL, `device_ip` varchar(64) default NULL, `device_mac` varchar(64) default NULL, `device_location` varchar(255) default NULL, `device_eklznum` int(16) default NULL, `device_fiscdate` date default NULL, `device_servipass` varchar(64) default NULL, `device_date_receive` date default NULL, `device_status` varchar(64) default NULL, `device_date_spisan` date default NULL, `device_spisan_reason` varchar(255) default NULL, `device_comment` varchar(255) default NULL, `monitor_type` varchar(16) default NULL, `monitor_diagonal` varchar(16) default NULL, `telephone_type` varchar(64) default NULL, `keyboard_type` varchar(64) NOT NULL default '', `ports` varchar(64) NOT NULL default '', `term_id` varchar(45) NOT NULL default '', `autor_id` varchar(45) NOT NULL default '', `runtime` varchar(45) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 PACK_KEYS=0 COMMENT='инвентаризация'; -- --------------------------------------------------------
-- -- Структура таблицы `location_types` --
CREATE TABLE `location_types` ( `id` int(10) NOT NULL auto_increment, `location_type` varchar(10) NOT NULL default '', `type_descr` varchar(50) NOT NULL default '', PRIMARY KEY USING BTREE (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=5 ;
-- -- Дамп данных таблицы `location_types` --
INSERT INTO `location_types` VALUES (1, 't1', 'Магазин'); INSERT INTO `location_types` VALUES (2, 't2', 'Офисы'); INSERT INTO `location_types` VALUES (3, 't3', 'Другое'); INSERT INTO `location_types` VALUES (4, 't4', 'В ремонте');
-- --------------------------------------------------------
-- -- Структура таблицы `location_types_sub` --
CREATE TABLE `location_types_sub` ( `id` int(10) NOT NULL auto_increment, `location_type` varchar(10) NOT NULL default '', `sub_type` varchar(10) NOT NULL default '', `type_descr` varchar(30) NOT NULL default '', PRIMARY KEY USING BTREE (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=31 ;
-- -- Дамп данных таблицы `location_types_sub` --
INSERT INTO `location_types_sub` VALUES (1, 't1', 'st11', 'Мед. пункт'); INSERT INTO `location_types_sub` VALUES (2, 't1', 'st12', 'Охрана'); INSERT INTO `location_types_sub` VALUES (3, 't1', 'st13', 'Инженерская, 055'); INSERT INTO `location_types_sub` VALUES (4, 't1', 'st14', 'Линия касс'); INSERT INTO `location_types_sub` VALUES (5, 't1', 'st15', 'Менеджерская касс'); INSERT INTO `location_types_sub` VALUES (6, 't1', 'st16', 'Главная касса'); INSERT INTO `location_types_sub` VALUES (7, 't1', 'st17', 'ДК-2'); INSERT INTO `location_types_sub` VALUES (8, 't1', 'st18', 'ОПВС'); INSERT INTO `location_types_sub` VALUES (9, 't1', 'st19', 'Отделы'); INSERT INTO `location_types_sub` VALUES (10, 't1', 'st20', 'Приёмка'); INSERT INTO `location_types_sub` VALUES (11, 't1', 'st21', 'Склад'); INSERT INTO `location_types_sub` VALUES (12, 't1', 'st22', 'Доставка'); INSERT INTO `location_types_sub` VALUES (13, 't1', 'st23', 'Выдача'); INSERT INTO `location_types_sub` VALUES (14, 't1', 'st24', 'Послепродажное обсл.'); INSERT INTO `location_types_sub` VALUES (15, 't1', 'st25', 'Сервисный центр'); INSERT INTO `location_types_sub` VALUES (16, 't2', 'st26', 'Отдел кадров'); INSERT INTO `location_types_sub` VALUES (17, 't2', 'st27', 'Отдел IT, ввод данных'); INSERT INTO `location_types_sub` VALUES (18, 't2', 'st28', 'Серверная'); INSERT INTO `location_types_sub` VALUES (19, 't2', 'st29', 'Директор'); INSERT INTO `location_types_sub` VALUES (20, 't2', 'st30', 'Контролёр'); INSERT INTO `location_types_sub` VALUES (21, 't2', 'st31', 'Бухгалтерия'); INSERT INTO `location_types_sub` VALUES (22, 't2', 'st32', 'Менеджерская'); INSERT INTO `location_types_sub` VALUES (23, 't2', 'st33', 'Бализаж'); INSERT INTO `location_types_sub` VALUES (24, 't2', 'st34', 'Комната отдыха'); INSERT INTO `location_types_sub` VALUES (25, 't3', 'st35', 'Удалённый склад'); INSERT INTO `location_types_sub` VALUES (26, 't3', 'st36', 'Центральный офис'); INSERT INTO `location_types_sub` VALUES (27, 't3', 'st37', 'Магазин в Алтуфьево'); INSERT INTO `location_types_sub` VALUES (28, 't3', 'st38', 'Магазин в Красногорске'); INSERT INTO `location_types_sub` VALUES (29, 't4', 'st39', 'Пилот'); INSERT INTO `location_types_sub` VALUES (30, 't4', 'st40', 'АНТ');
-- --------------------------------------------------------
-- -- Структура таблицы `location_types_sub_sub` --
CREATE TABLE `location_types_sub_sub` ( `id` int(10) NOT NULL auto_increment, `location_type` varchar(10) NOT NULL default '', `sub_type` varchar(30) NOT NULL default '', `type_descr` varchar(30) NOT NULL default '', PRIMARY KEY USING BTREE (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=55 ;
-- -- Дамп данных таблицы `location_types_sub_sub` --
INSERT INTO `location_types_sub_sub` VALUES (1, 'st14', 'st11', 'Касса 01'); INSERT INTO `location_types_sub_sub` VALUES (2, 'st14', 'st12', 'Касса 02'); INSERT INTO `location_types_sub_sub` VALUES (3, 'st14', 'st13', 'Касса 03'); INSERT INTO `location_types_sub_sub` VALUES (4, 'st14', 'st14', 'Касса 04'); INSERT INTO `location_types_sub_sub` VALUES (5, 'st14', 'st15', 'Касса 05'); INSERT INTO `location_types_sub_sub` VALUES (6, 'st14', 'st16', 'Касса 06'); INSERT INTO `location_types_sub_sub` VALUES (7, 'st14', 'st17', 'Касса 07'); INSERT INTO `location_types_sub_sub` VALUES (8, 'st14', 'st18', 'Касса 08'); INSERT INTO `location_types_sub_sub` VALUES (9, 'st14', 'st19', 'Касса 09'); INSERT INTO `location_types_sub_sub` VALUES (10, 'st14', 'st20', 'Касса 10'); INSERT INTO `location_types_sub_sub` VALUES (11, 'st14', 'st21', 'Касса 11'); INSERT INTO `location_types_sub_sub` VALUES (12, 'st14', 'st22', 'Касса 12'); INSERT INTO `location_types_sub_sub` VALUES (13, 'st14', 'st23', 'Касса 13'); INSERT INTO `location_types_sub_sub` VALUES (14, 'st14', 'st24', 'Касса 14'); INSERT INTO `location_types_sub_sub` VALUES (15, 'st14', 'st25', 'Касса 15'); INSERT INTO `location_types_sub_sub` VALUES (16, 'st14', 'st26', 'Касса 16'); INSERT INTO `location_types_sub_sub` VALUES (17, 'st14', 'st27', 'Касса 17'); INSERT INTO `location_types_sub_sub` VALUES (18, 'st14', 'st28', 'Касса 18'); INSERT INTO `location_types_sub_sub` VALUES (19, 'st14', 'st29', 'Касса 19'); INSERT INTO `location_types_sub_sub` VALUES (20, 'st14', 'st30', 'Касса 20'); INSERT INTO `location_types_sub_sub` VALUES (21, 'st14', 'st31', 'Касса 21'); INSERT INTO `location_types_sub_sub` VALUES (22, 'st14', 'st32', 'Касса 22'); INSERT INTO `location_types_sub_sub` VALUES (23, 'st14', 'st33', 'Касса 23'); INSERT INTO `location_types_sub_sub` VALUES (24, 'st14', 'st34', 'Касса 24'); INSERT INTO `location_types_sub_sub` VALUES (25, 'st14', 'st35', 'Касса 25'); INSERT INTO `location_types_sub_sub` VALUES (26, 'st14', 'st36', 'Касса 26'); INSERT INTO `location_types_sub_sub` VALUES (27, 'st14', 'st37', 'Касса 27'); INSERT INTO `location_types_sub_sub` VALUES (28, 'st14', 'st38', 'Касса 75'); INSERT INTO `location_types_sub_sub` VALUES (29, 'st14', 'st39', 'Касса 76'); INSERT INTO `location_types_sub_sub` VALUES (30, 'st14', 'st40', 'Касса 77'); INSERT INTO `location_types_sub_sub` VALUES (31, 'st14', 'st41', 'Касса 90'); INSERT INTO `location_types_sub_sub` VALUES (32, 'st14', 'st42', 'Касса 91'); INSERT INTO `location_types_sub_sub` VALUES (33, 'st14', 'st43', 'Касса 92'); INSERT INTO `location_types_sub_sub` VALUES (34, 'st14', 'st44', 'Касса 93'); INSERT INTO `location_types_sub_sub` VALUES (35, 'st14', 'st45', 'Касса 94'); INSERT INTO `location_types_sub_sub` VALUES (36, 'st14', 'st46', 'Касса 95'); INSERT INTO `location_types_sub_sub` VALUES (37, 'st14', 'st47', 'Касса 96'); INSERT INTO `location_types_sub_sub` VALUES (38, 'st14', 'st48', 'Касса 97'); INSERT INTO `location_types_sub_sub` VALUES (39, 'st14', 'st49', 'Касса 98'); INSERT INTO `location_types_sub_sub` VALUES (40, 'st18', 'st50', '01 - Строительные материалы'); INSERT INTO `location_types_sub_sub` VALUES (41, 'st18', 'st51', '02 - Столярные изделия'); INSERT INTO `location_types_sub_sub` VALUES (42, 'st18', 'st52', '03 - Электричество'); INSERT INTO `location_types_sub_sub` VALUES (43, 'st18', 'st53', '04 - Инструменты'); INSERT INTO `location_types_sub_sub` VALUES (44, 'st18', 'st54', '05 - Напольные покрытия'); INSERT INTO `location_types_sub_sub` VALUES (45, 'st18', 'st55', '06 - Плитка'); INSERT INTO `location_types_sub_sub` VALUES (46, 'st18', 'st56', '07 - Сантехника'); INSERT INTO `location_types_sub_sub` VALUES (47, 'st18', 'st57', '08 - Водоснабжение'); INSERT INTO `location_types_sub_sub` VALUES (48, 'st18', 'st58', '09 - Сад'); INSERT INTO `location_types_sub_sub` VALUES (49, 'st18', 'st59', '10 - Скобяные изделия'); INSERT INTO `location_types_sub_sub` VALUES (50, 'st18', 'st60', '11 - Краски'); INSERT INTO `location_types_sub_sub` VALUES (51, 'st18', 'st61', '12 - Декор'); INSERT INTO `location_types_sub_sub` VALUES (52, 'st18', 'st62', '13 - Освещение'); INSERT INTO `location_types_sub_sub` VALUES (53, 'st18', 'st63', '14 - Обустройство дома'); INSERT INTO `location_types_sub_sub` VALUES (54, 'st18', 'st64', '15 - Кухни');
-- --------------------------------------------------------
-- -- Структура таблицы `modules` --
CREATE TABLE `modules` ( `id` int(10) unsigned NOT NULL auto_increment, `module_name` varchar(45) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COMMENT='модули' AUTO_INCREMENT=2 ;
-- -- Дамп данных таблицы `modules` --
INSERT INTO `modules` VALUES (1, 'inventory');
-- --------------------------------------------------------
-- -- Структура таблицы `status` --
CREATE TABLE `status` ( `id` int(10) unsigned NOT NULL auto_increment, `device_status` varchar(45) NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COMMENT='статус' AUTO_INCREMENT=6 ;
-- -- Дамп данных таблицы `status` --
INSERT INTO `status` VALUES (1, 'Используется'); INSERT INTO `status` VALUES (2, 'Запас'); INSERT INTO `status` VALUES (3, 'В ремонте'); INSERT INTO `status` VALUES (4, 'Списано'); INSERT INTO `status` VALUES (5, 'Сломано');
|
И архив со всем скриптом и базой в аттаче. Это сообщение отредактировал(а) andro_id - 19.5.2007, 18:38
Присоединённый файл ( Кол-во скачиваний: 4 )
lmadmin.rar 91,14 Kb
|