Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Непонятная проблема
 
 автор: Flare   (29.07.2009 в 12:15)   письмо автору
 
 

вот есть такой код
тут код формы состоящией из 4 пунктов
на каждом пункте вводятся данные из списка либо вводятся по _POST
данные потом в конце сохраняются в БД
вопрос в том почему у меня все данные с формы нормально принимаются кроме $_POST['option_sblock'], $_POST['input_netname'], $_POST['input_roomcomment'], $_POST['input_desc'], а в этих вообще не передаются значения при сабмите формы, непонятно почему, потому что везде одинаковый код для каждой формы... помогите пожалуйста в чем причина, уже несколько дней мучаю...

<?
session_start
();

include_once 
"engine/data/connect.php";
include_once 
"language/russian/main.lng";
include_once 
"top.php";
include_once 
"engine/inc/func.inc.php";

$button2 trim($_POST['kuku']);

$comp[sblock] = trim($_POST['option_sblock']);
$comp[cpu] = trim($_POST['option_cpu']);
$comp[motherboard] = trim($_POST['option_motherboard']);
$comp[ram] = trim($_POST['option_ram']);
$comp[hdd] = trim($_POST['option_hdd']);
$comp[videocard] = trim($_POST['option_videocard']);
$comp[soundcard] = trim($_POST['option_soundcard']);
$comp[cd] = trim($_POST['option_cd']);
$comp[power] = trim($_POST['option_power']);
$comp[netcard] = trim($_POST['option_netcard']);
$comp[bios] = trim($_POST['option_bios']);
$comp[keyboard] = trim($_POST['option_keyboard']);
$comp[mouse] = trim($_POST['option_mouse']);
$comp[usb] = trim($_POST['option_usb']);
$comp[pci] = trim($_POST['option_pci']);

$comp[monitor] = trim($_POST['option_monitor']);
$comp[asystem] = trim($_POST['option_asystem']);
$comp[ups] = trim($_POST['option_ups']);
$comp[filter] = trim($_POST['option_filter']);
$comp[printer] = trim($_POST['option_printer']);
$comp[scaner] = trim($_POST['option_scaner']);
$comp[fax] = trim($_POST['option_fax']);
$comp[mfu] = trim($_POST['option_mfu']);
$comp[kopir] = trim($_POST['option_kopir']);
$comp[invmonitor] = trim($_POST['input_invmonitor']);
$comp[invups] = trim($_POST['input_invups']);
$comp[invprinter] = trim($_POST['input_invprinter']);
$comp[invscaner] = trim($_POST['input_invscaner']);
$comp[invfax] = trim($_POST['input_invfax']);
$comp[invmfu] = trim($_POST['input_invmfu']);
$comp[invkopir] = trim($_POST['input_invkopir']);

$comp[comptype] = trim($_POST['option_comptype']);
$comp[netname] = trim($_POST['input_netname']);
$comp[netaddress] = trim($_POST['input_netaddress']);
$comp[macaddress] = trim($_POST['input_macaddress']);
$comp[switchport] = trim($_POST['input_switchport']);
$comp[alias] = trim($_POST['input_alias']);
$comp[filial] = trim($_POST['option_filial']);
$comp[dep] = trim($_POST['option_dep']);
$comp[room] = trim($_POST['option_room']);
$comp[staff] = trim($_POST['option_staff']);
$comp[staffuser] = trim($_POST['input_staffuser']);
$comp[sersblock] = trim($_POST['input_sersblock']);
$comp[invsblock] = trim($_POST['input_invsblock']);
$comp[roomcomment] = trim($_POST['input_roomcomment']);
$comp[desc] = trim($_POST['input_desc']);

$comp[dist] = trim($_POST['option_dist']);
$comp[buydate] = trim($_POST['input_buydate']);
$comp[garexpire] = trim($_POST['input_garexpire']);
$comp[schetfact] = trim($_POST['input_schetfact']);
$comp[price] = trim($_POST['input_price']);


// ********************************************************************************
// Системный блок
// ********************************************************************************
if($_REQUEST['action'] == "sblock")

echo 
"<table border=\"0\" width=\"50%\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-sblock\" method=\"post\" action=\"$PHP_SELF\">";

 
makeList ("Системный блок"sblock);
makeList ("Процессор"cpu);
makeList ("Материнская плата"motherboard);
makeList ("Оперативная память"ram);
makeList ("Жесткий диск"hdd);
makeList ("Видеокарта"videocard);
makeList ("Звуковая карта"soundcard);
makeList ("CD/DVD дисковод"cd);
makeList ("Блок питания"power);
makeList ("Сетевая карта"netcard);
makeList ("BIOS"bios);
makeList ("Клавиатура"keyboard);
makeList ("Мышь"mouse);
makeList ("USB устройство"usb);
makeList ("PCI устройство"pci);

echo 
"<tr><td></td><td align=\"right\" class=\"InputTD\">";
echo 
"<input type=hidden name=action value=\"periphery\"><input type=\"submit\" id=\"check-sblock\" value=\"Продолжить\" />";
echo 
"</td></tr></table></form>";
}
// ********************************************************************************
// Периферия
// ********************************************************************************
elseif($_REQUEST['action'] == "periphery")
{
echo 
"<table border=\"0\" width=\"50%\" align=\"center\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-periphery\" method=\"post\" action=\"$PHP_SELF\">";

$_SESSION['comp_sblock'] = $comp[sblock];
$_SESSION['comp_cpu'] = $comp[cpu];
$_SESSION['comp_motherboard'] = $comp[motherboard];
$_SESSION['comp_ram'] = $comp[ram];
$_SESSION['comp_hdd'] = $comp[hdd];
$_SESSION['comp_videocard'] = $comp[videocard];
$_SESSION['comp_soundcard'] = $comp[soundcard];
$_SESSION['comp_cd'] = $comp[cd];
$_SESSION['comp_power'] = $comp[power]; 
$_SESSION['comp_netcard'] = $comp[netcard];
$_SESSION['comp_bios'] = $comp[bios];
$_SESSION['comp_keyboard'] = $comp[keyboard];
$_SESSION['comp_mouse'] = $comp[mouse];
$_SESSION['comp_usb'] = $comp[usb];
$_SESSION['comp_pci'] = $comp[pci];

makeList ("Монитор"monitor);
makeList ("Аккустическая система"asystem);
makeList ("ИБП"ups);
makeList ("Сетевой фильтр"filter);
makeList ("Принтер"printer);
makeList ("Сканер"scaner);
makeList ("Факс"fax);
makeList ("МФУ"mfu);
makeList ("Копировальный аппарат"kopir);
makeInput ("Инвентарный № монитора"invmonitor);
makeInput ("Инвентарный № ИБП"invups);
makeInput ("Инвентарный № принтера"invprinter);
makeInput ("Инвентарный № сканера"invscaner);
makeInput ("Инвентарный № факса"invfax);
makeInput ("Инвентарный № МФУ"invmfu);
makeInput ("Инвентарный № копира"invkopir);

echo 
"<tr><td align=\"left\"><input type=\"button\" onclick=\"history.back()\"  id=\"garantiya\" value=\"Вернуться\" /></td><td align=\"right\" class=\"SubmitTD\">";
echo 
"<input type=hidden name=action value=\"information\"><input type=\"submit\" id=\"check-periphery\" value=\"Продолжить\" />";
echo 
"</td></tr></table></form>";

// ********************************************************************************
// Информация
// ********************************************************************************
elseif($_REQUEST['action'] == "information")
{
echo 
"<table border=\"0\" width=\"50%\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-information\" method=\"post\" action=\"$PHP_SELF\">";

$_SESSION['comp_monitor'] = $comp[monitor];
$_SESSION['comp_asystem'] = $comp[asystem];
$_SESSION['comp_ups'] = $comp[ups];
$_SESSION['comp_filter'] = $comp[filter];
$_SESSION['comp_printer'] = $comp[printer];
$_SESSION['comp_scaner'] = $comp[scaner];
$_SESSION['comp_fax'] = $comp[fax];
$_SESSION['comp_mfu'] = $comp[mfu];
$_SESSION['comp_kopir'] = $comp[kopir];
$_SESSION['comp_invmonitor'] = $comp[invmonitor]; 
$_SESSION['comp_invups'] = $comp[invups];
$_SESSION['comp_invprinter'] = $comp[invprinter];
$_SESSION['comp_invscaner'] = $comp[invscaner];
$_SESSION['comp_invfax'] = $comp[invfax];
$_SESSION['comp_invmfu'] = $comp[invmfu];
$_SESSION['comp_invkopir'] = $comp[invkopir];

makeList ("Тип компьютера"comptype);
makeInput ("Сетевое имя"netname); 
makeInput ("Сетевой адрес"netaddress);
makeInput ("MAC адрес"macaddress);
makeInput ("Порт свитча"switchport);
makeInput ("Псевдоним"alias);
makeList ("Филиал"filial);
makeList ("Отдел"dep);
makeList ("Номер кабинета"room);
makeList ("Мат. ответственное лицо"staff);
makeInput ("Пользователь рабочего места"staffuser);
makeInput ("Серийный номер"sersblock);
makeInput ("Инвентарный номер"invsblock);
makeInput("Коментарий к местоположению"roomcomment);
makeInput ("Краткое описание компьютера"desc);

echo 
"<tr><td align=\"left\"><input type=\"button\" onclick=\"history.back()\"  id=\"garantiya\" value=\"Вернуться\" /></td><td align=\"right\" class=\"SubmitTD\">";
echo 
"<input type=hidden name=action value=\"garantiya\"><input type=\"submit\" id=\"check-information\" value=\"Продолжить\" />";
echo 
"</td></tr></table></form>";

// ********************************************************************************
// Гарантийные обязательства
// ********************************************************************************
elseif($_REQUEST['action'] == "garantiya")
{
echo 
"<table border=\"0\" width=\"50%\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-garantiya\" method=\"post\" action=\"$PHP_SELF\">";

echo 
$_POST['netaddress']; [b]//ЕЕ НЕ ВИДИТ[/b]
$_SESSION['comp_comptype'] = $comp[comptype];
$_SESSION['comp_netname'] = $comp[netname];
$_SESSION['comp_netaddress'] = $comp[netaddress];
$_SESSION['comp_macaddress'] = $comp[macaddress];
$_SESSION['comp_switchport'] = $comp[switchport];
$_SESSION['comp_alias'] = $comp[alias];
$_SESSION['comp_filial'] = $comp[filial];
$_SESSION['comp_dep'] = $comp[dep]; 
$_SESSION['comp_room'] = $comp[room];
$_SESSION['comp_staff'] = $comp[staff];
$_SESSION['comp_staffuser'] = $comp[staffuser];
$_SESSION['comp_sersblock'] = $comp[sersblock];
$_SESSION['comp_invsblock'] = $comp[invsblock];
$_SESSION['comp_roomcomment'] = $comp[roomcomment];
$_SESSION['comp_desc'] = $comp[desc];

makeList ("Поставщик"dist);
makeInput ("Дата приобретения"buydate);
makeInput ("Гарантийные обязательства до"garexpire);
makeInput ("Счет Фактура №"schetfact);
makeInput ("Цена"price);
echo 
"<tr><td align=\"left\"><input type=\"button\" onclick=\"history.back()\"  id=\"garantiya\" value=\"Вернуться\" /></td><td align=\"right\" class=\"SubmitTD\">";
echo 
"<input type=hidden name=action value=\"finish\"><input type=\"submit\" id=\"check-garantiya\" value=\"Продолжить\" />";
echo 
"</td></tr></table></form>";
}
// ********************************************************************************
// Финиш
// ********************************************************************************
elseif($_REQUEST['action'] == "finish")
{
echo 
"<table border=\"0\" width=\"50%\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-finish\" method=\"post\" action=\"$PHP_SELF\">";



$_SESSION['comp_dist'] = $comp[dist];
$_SESSION['comp_buydate'] = $comp[buydate];
$_SESSION['comp_garexpire'] = $comp[garexpire];
$_SESSION['comp_schetfact'] = $comp[schetfact];
$_SESSION['comp_price'] = $comp[price];

makeText ("Системный блок"sblock);
makeText ("Процессор"cpu);
makeText ("Материнская плата"motherboard);
makeText ("Оперативная память"ram);
makeText ("Жесткий диск"hdd);
makeText ("Видеокарта"videocard);
makeText ("Звуковая карта"soundcard);
makeText ("CD/DVD дисковод"cd);
makeText ("Блок питания"power);
makeText ("Сетевая карта"netcard);
makeText ("BIOS"bios);
makeText ("Клавиатура"keyboard);
makeText ("Мышь"mouse);
makeText ("USB устройство"usb);
makeText ("PCI устройство"pci);

echo 
"<tr><td class=\"TextTD\"><br><b>Периферия:</b></td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"2\"></td></tr>";

makeText ("Монитор"monitor);
makeText ("Аккустическая система"asystem);
makeText ("ИБП"ups);
makeText ("Сетевой фильтр"filter);
makeText ("Принтер"printer);
makeText ("Сканер"scaner);
makeText ("Факс"fax);
makeText ("МФУ"mfu);
makeText ("Копир"kopir);
makeText ("Инвентарный № монитора"invmonitor);
makeText ("Инвентарный № ИБП"invups);
makeText ("Инвентарный № принтера"invprinter);
makeText ("Инвентарный № сканера"invscaner);
makeText ("Инвентарный № факса"invfax);
makeText ("Инвентарный № МФУ"invmfu);
makeText ("Инвентарный № копира"invkopir);

echo 
"<tr><td class=\"TextTD\"><br><b>Информация:</b></td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"2\"></td></tr>";

makeText ("Тип компьютера"comptype);
makeText ("Сетевое имя"netname); 
makeText ("Сетевой адрес"netaddress);
makeText ("MAC адрес"macaddress);
makeText ("Порт свитча"switchport);
makeText ("Псевдоним"alias);
makeText ("Филиал"filial);
makeText ("Отдел"dep);
makeText ("Номер кабинета"room);
makeText ("Мат. ответственное лицо"staff);
makeText ("Пользователь рабочего места"staffuser);
makeText ("Серийный номер"sersblock);
makeText ("Инвентарный номер"invsblock);
makeText ("Коментарий к местоположению"roomcomment);
makeText ("Краткое описание компьютера"desc);

echo 
"<tr><td class=\"TextTD\"><br><b>Гарантийные обязательства:</b></td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"2\"></td></tr>";

makeText ("Поставщик"dist);
makeText ("Дата покупки"buydate);
makeText ("Гарантийные обязательства до"garexpire);
makeText ("Счет Фактура №"schetfact);
makeText ("Цена"price);

echo 
"<tr><td align=\"left\"><input type=\"button\" onclick=\"history.back()\"  id=\"garantiya\" value=\"Вернуться\" /></td><td align=\"right\" class=\"SubmitTD\">";
echo 
"<input type=hidden name=action value=\"writedb\"><input type=\"submit\" name=\"kuku\"id=\"check-finish\" value=\"Завершить\" />";
echo 
"</td></tr></table></form>";
}
// ********************************************************************************
// Запись в БД
// ********************************************************************************

elseif($_REQUEST['action'] == "writedb")
{

if (empty(
$button2)) {

}
else 
{
    
echo 
$_SESSION['comp_buydate'] ;
echo 
$_SESSION['comp_garexpire'] ;
echo
$_SESSION['comp_schetfact'] ;
echo 
$_SESSION['comp_price'];

//Записываем все данные в БД с полей
$sql="INSERT INTO spr_maincomp ...";
$result=mysql_query($sql);
if (!
$result)



  echo 
"Ошибка базы данных. MySQL пишет:"mysql_error();


echo 
"<table border=\"0\" width=\"50%\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-finish\" method=\"post\" action=\"$PHP_SELF\">";

echo 
"<input type=hidden name=action value=\"main\"><input type=\"submit\" name=\"submit\"id=\"check-finish\" value=\"Добавить еще один компьютер\" />";
echo 
"</td></tr></table></form>";

}

}

// ********************************************************************************
// Начало
// ********************************************************************************
else {

echo 
"<table border=\"0\" width=\"50%\"  align=\"center\" cellpadding=\"0\" cellspacing=\"0\">";
echo 
"<form id=\"check-main\" method=\"post\" action=\"$PHP_SELF\">";

echo 
"<input type=hidden name=action value=\"sblock\"><input type=\"submit\" id=\"check-main\" value=\"Начать\" />";
echo 
"</td></tr></table></form>";
}

include_once 
"footer.php";

?>

  Ответить  
 
 автор: Flare   (29.07.2009 в 12:22)   письмо автору
 
   для: Flare   (29.07.2009 в 12:15)
 

вот функции для принятия значений вводимых и отображения в отчете

<?

// ********************************************************************************
// Генератор списков
// ********************************************************************************
function makeList ($name$selector) {
echo 
"<tr><td class=\"TextTD\">".$name."</td>";
echo 
"<td class=\"InputTD\"><select class=\"text_select\" name=\"option_".$selector."\" id=\"select\">";
echo 
"<OPTION value=\"0\">Отсутствует";

$sql="SELECT * FROM spr_".$selector." ORDER BY name;";
$result=mysql_query($sql);
if (!
$result)
  echo 
"Ошибка базы данных. MySQL пишет:"mysql_error();
while (
$result && $row_result=mysql_fetch_assoc($result))
   {
    echo 
"<OPTION value=".$row_result["id_".$selector.""].">".$row_result["name"];
   }
echo 
"</td></tr>";
echo 
"</select>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"1\"></td></tr>";
}

// ********************************************************************************
// Генератор редактирования списков
// ********************************************************************************
function makeEdList ($name$selector$value$name2) {
echo 
"<tr><td class=\"TextTD\">".$name."</td>";
echo 
"<td class=\"InputTD\"><select class=\"text_select\" name=\"option_".$selector."\" id=\"select\">";
echo 
"<OPTION value=\"".$value."\">".$name2."";

$sql="SELECT * FROM spr_".$selector." ORDER BY name;";
$result=mysql_query($sql);
if (!
$result)
  echo 
"Ошибка базы данных. MySQL пишет:"mysql_error();
while (
$result && $row_result=mysql_fetch_assoc($result))
   {
    echo 
"<OPTION value=".$row_result["id_".$selector.""].">".$row_result["name"];
   }
echo 
"</td></tr>";
echo 
"</select>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"1\"></td></tr>";
}

// ********************************************************************************
// Генератор тектовых полей
// ********************************************************************************
function makeInput ($name$selector) {
echo 
"<tr><td class=\"TextTD\">".$name."</td>";
echo 
"<td class=\"InputTD\"><input type=\"text\" class=\"text_select\" name=\"input_".$selector."\" id=\"textfield\" />";
echo 
"input_".$selector."";
echo 
"</td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"1\"></td></tr>";
}

// ********************************************************************************
// Генератор редактирования тектовых полей
// ********************************************************************************
function makeEdInput ($name$selector$value) {
echo 
"<tr><td class=\"TextTD\">".$name."</td>";
echo 
"<td class=\"InputTD\"><input type=\"text\" class=\"text_select\" value=\"".$value."\" name=\"input_".$selector."\" id=\"textfield\" />";
echo 
"</td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"1\"></td></tr>";
}

// ********************************************************************************
// Генератор полей отчета
// ********************************************************************************
function makeText ($name$selector) {
echo 
"<tr><td class=\"TextTD\">".$name."</td>";
if (
$_SESSION['comp_'.$selector.''] == || $_SESSION['comp_'.$selector.''] == NULL) { echo "<td class=\"TextTD\">Не указано</td>"; }
else { echo 
"<td class=\"TextTD\">".$_SESSION['comp_'.$selector.'']."</td>";}
echo 
"</td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"100\" border=\"0\" height=\"1\"></td></tr>";
}

// ********************************************************************************
// Генератор просмотра параметров компьютера
// ********************************************************************************
function makeEdText ($name$selector) {
echo 
"<tr><td width=\"200\" class=\"TextTD\">".$name."</td>";
echo 
"<td class=\"TextTD\"><b>".$selector."</b></td>";
echo 
"</td></tr>";
echo 
"<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img src=\"images/pix.gif\" width=\"50\" border=\"0\" height=\"1\"></td></tr>";
}

    


?>

  Ответить  
 
 автор: ride   (29.07.2009 в 13:32)   письмо автору
 
   для: Flare   (29.07.2009 в 12:22)
 

1. а сам селект выводится нормально?
2. что показывает print_r($_POST)?

не используйте одинаковые айди для разных селектов(это в ващих генераторах).

upd
приведите поменьше кода.

  Ответить  
 
 автор: Flare   (29.07.2009 в 14:39)   письмо автору
 
   для: ride   (29.07.2009 в 13:32)
 

Array ( [option_sblock] => [option_cpu] => 0 [option_motherboard] => 1 [option_ram] => 0 [option_hdd] => 2 [option_videocard] => 0 [option_soundcard] => 0 [option_cd] => 0 [option_power] => 0 [option_netcard] => 0 [option_bios] => 0 [option_keyboard] => 0 [option_mouse] => 0 [option_usb] => 0 [option_pci] => 0 [action] => periphery и т.д. )

тоесть [option_sblock] => ? и т.д. не сохраняет в массив значения при нажатии сабмит, хотя остальные на форме сохраняет... сам селектор нормально выводится... айди поменял чтобы для каждого элемента был другой, не помогло... могу код привести меньше, но тогда не выйдет все уловить, потому что могу убрать код там где и может быть ошибка...

  Ответить  
 
 автор: ride   (29.07.2009 в 15:05)   письмо автору
 
   для: Flare   (29.07.2009 в 14:39)
 

хотелось бы вам задать вопрос "а вы уверены, что у вас в таблице spr_sblock есть поле id_sblock",
но вы утверждаете, что хтмл код у вас нормальный.
тогда у меня только одно предположение: у вас где-то ниже этого селекта расположен еще один элемент с именем option_sblock, который и передает пустое значение.

  Ответить  
 
 автор: Flare   (29.07.2009 в 16:58)   письмо автору
 
   для: ride   (29.07.2009 в 15:05)
 

да поле id_sblock, потому что в других скриптах тоже используется


>но вы утверждаете, что хтмл код у вас нормальный.
>тогда у меня только одно предположение: у вас где-то ниже этого селекта расположен еще один элемент с именем option_sblock, который и передает пустое значение.

я так тоже думал, даже думал что гдето в названиях ошибся, но нет уж, все правильно, этот что я дал это полный не считая хтмл вставки что я удалил.

  Ответить  
 
 автор: ride   (29.07.2009 в 17:09)   письмо автору
 
   для: Flare   (29.07.2009 в 16:58)
 

попробуйте в вашей форме оставить только один этот селект, а остальные удалите
проверьте, придет ли в этот раз правильное значение
все же, покажите какой селект у вас сгенерировался.

  Ответить  
 
 автор: Flare   (29.07.2009 в 17:48)   письмо автору
 
   для: ride   (29.07.2009 в 17:09)
 

вот страница когда выбирать со списка sblock
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title></title>
</head>

<body>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="0">
  <tr>
    <td width="83%"> <div align="left"><img src="/images/logo.jpg" width="261" height="153" /></div></td>

    <td width="17%"><div align="center" class="TextTD0">Здравствуйте, <strong>test</strong>!
    (<strong><a class=link1 href="logoff.php">Выйти</a></strong>)</div></td>
  </tr>
  <tr>
    <td colspan="2"><div align="center" class="стиль1">
      <div align="center">
        <table width="100%" border="0" bgcolor="#0DBD00">

          <tr>
            <td ><div align="center" class="link2"> 
              <div align="left"><a href="count.php"><img src="/images/menu1.gif" border="0"></a><a href="alerts.php"><img src="/images/menu2.gif" width="150" height="20" border="0"></a><a href="messages.php"><img src="/images/menu3.gif" width="150" height="20" border="0"></a><a href="reports.php"><img src="/images/menu4.gif" width="150" height="20" border="0"></a><a href="search.php"><img src="/images/menu5.gif" width="150" height="20" border="0"></a><a href="preferences.php"><img src="/images/menu6.gif" width="150" height="20" border="0"></a></div>
            </div></td>
            </tr>
        </table>
      </div>
    </div></td>
  </tr>

  <tr>
    <td colspan="2"><p align="center">&nbsp;</p></td>
  </tr>
</table>

<table border="0" width="50%" align="center" cellpadding="0" cellspacing="0"><form id="check-sblock" method="post" action=""><tr><td colspan="2"class="TextTD0"><img style="position:relative; top:5px;" src="images/ed.gif" width="4" border="0" height="22"<b>  ДОБАВЛЕНИЕ КОМПЬЮТЕРА</b></td></tr><tr><td width="300"><img src="images/pix.gif" width="4" border="0" height="4"></td></tr><tr><td colspan="2" class="TextTD"><b>Этап 1</b>. Системный блок</td></tr><tr><td><img src="images/pix.gif" width="4" border="0" height="4"></td></tr><tr><td colspan="2" bgcolor="#dfdfdf"><img src="images/pix.gif" width="100" border="0" height="4"></td></tr>Array
(
    [action] => sblock
)
<tr><td class="TextTD">Системный блок</td><td class="InputTD"><select class="text_select" name="option_sblock" id="select_sblock"><OPTION value="0">Отсутствует<OPTION value=>Yhaha<OPTION value=>Версия Lite C-3</td></tr></select><tr><td colspan="2" bgcolor="#dfdfdf"><img src="images/pix.gif" width="100" border="0" height="1"></td></tr><tr><td></td><td align="right" class="InputTD"><input type=hidden name=action value="periphery"><input type="submit" id="check-sblock" value="Продолжить" /></td></tr></table></form><html xmlns="http://www.w3.org/1999/xhtml">



<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
  
  <tr>

    <td><div align="center">
      <table width="100%" border="0" bordercolor="#000000" bgcolor="#0DBD00">
        <tr>
          <td width="22%">&nbsp;</td>
          <td width="61%">&nbsp;</td>
          <td width="17%"><div align="center"><a href="help/"><img src="/images/menu7.gif" width="150" height="20" border="0"></a></div></td>
        </tr>
      </table>
    </div>      <div align="center"></div>      <div align="center"></div>      <div align="center"></div>      <div align="center" class="стиль1"></div></td>

  </tr>
</table>
</body>
</html>

  Ответить  
 
 автор: ride   (29.07.2009 в 18:44)   письмо автору
 
   для: Flare   (29.07.2009 в 17:48)
 

<tr><td class="TextTD">Системный блок</td><td class="InputTD"><select class="text_select" name="option_sblock" id="select_sblock"><OPTION value="0">Отсутствует<OPTION value=>Yhaha<OPTION value=>Версия Lite C-3</td></tr></select><tr><td colspan="2" bgcolor="#dfdfdf"><img src="images/pix.gif" width="100" border="0" height="1"></td></tr><tr><td></td><td align="right" class="InputTD"><input type=hidden name=action value="periphery"><input type="submit" id="check-sblock" value="Продолжить" /></td></tr></table></form><html xmlns="http://www.w3.org/1999/xhtml">

что же вы меня обманываете?
проверяйте данные, которые вы берете из бд.

upd
или у вас не существует поле spr_sblock.id_sblock, или оно у вас пустое

  Ответить  
 
 автор: Flare   (30.07.2009 в 09:40)   письмо автору
 
   для: ride   (29.07.2009 в 18:44)
 

Вообщем, они заполнены и были, и таблица такая существует:
CREATE TABLE `spr_sblock` (
`id_sbloсk` int(11) NOT NULL auto_increment,
`name` varchar(255) default NULL,
`type` varchar(255) default NULL,
`id_manufactory` int(11) default NULL,
PRIMARY KEY (`id_sbloсk`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=7 ;

--
-- Дамп данных таблицы `spr_sblock`
--

INSERT INTO `spr_sblock` VALUES (2, 'Yhaha', '', 3);
INSERT INTO `spr_sblock` VALUES (1, 'Версия Lite C-3', 'ATX', 0);
INSERT INTO `spr_sblock` VALUES (6, 'adadasd', 'atx', 2);

поменял в функции генераторе вывода списков местами значения имя и id, в списке кроме начального "<OPTION value=\"0\">Отсутствует"; ничего нету, только пустые строки вместо значений... (2 строки) поле id_sblock почему то не заполняется... Это только с ним, с другими все нормально
function makeList ($name, $selector) {
echo "<tr><td class=\"TextTD\">".$name."</td>";
echo "<td class=\"InputTD\"><select class=\"text_select\" name=\"option_".$selector."\" id=\"select_".$selector."\">";
echo "<OPTION value=\"0\">Отсутствует";

$sql="SELECT * FROM spr_".$selector." ORDER BY name;";
$result=mysql_query($sql);
if (!$result)
echo "Ошибка базы данных. MySQL пишет:", mysql_error();
while ($result && $row_result=mysql_fetch_assoc($result))

{
echo "<OPTION value=".$row_result["name"].">".$row_result["id_".$selector.""]; //тут поменял
}
echo "</td></tr>";
echo "</select>";
echo "<tr><td colspan=\"2\" bgcolor=\"#dfdfdf\"><img sr

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования