[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Переброс данных оператора select в обработчик
Евгений Щукин
Доброе утро! В файле index есть текстовые поля, куда вводятся цифры и окно с выбором вариантов. Цифры попадают в файл progressorder, а выбор варианта из раскрывающего списка не попадает. Если прописать переменную reklama в начале файла progressorder, проблем при обработке варианта не возникает.

Не могу понять, почему значения из текстовых полей доходят, а значение оператора select не доходит. Я выбираю вариант, но обработчик выдает "К сожалению, Вы не указали как нашли наш магазин".

Заранее спасибо!


Проблемный код файла index
 
<form action="progressorder.php","vieworders.php" method="post">
...
<tr>
<td><p>
Как Вы нашли наш магазин?<br></td>
<td>
<select
name="reklama">
<option>
Выберите способ</option>
<option
value = "a">Я всегда здесь беру товары
<option value = "b">Услышал рекламу по ТВ
<option value = "c">Сообщили знакомые
<option value = "d">Прочитал в Интернете
</select>
</td>
</tr>


Проблемный код файла progressorder
 $reklama = $_POST['reklama'];
...
switch ($reklama)
{
case "a":
echo "<p>Спасибо, что всегда берете у нас товары.</p>";
break;
case "b":
echo "<p>И реклама на ТВ дает свои результаты.</p>";
break;
case "c":
echo "<p>Хорошо, когда есть друзья.</p>";
break;
case "d":
echo "<p>Да, Интернет - это сила!</p>";
break;
default:
echo "<p>К сожалению, Вы не указали как нашли наш магазин.</p>";
break;
}



на всякий случай кидаю полный код
файл index
<body>
<form
action="progressorder.php","vieworders.php" method="post">
<table
border="0">
<tr
bgcolor="#cccccc">
<td
wigth=150>Наименование</td>
<td
width="15">Количество</td>
</tr>
<tr>
<td>
Диски</td>
<td
align="center"><input type="text" name="kol_vo_diskov" size="3" maxlength="3"></td>
</tr>
<tr>
<td>
Шины</td>
<td
align="center"><input type="text" name="kol_vo_shin" size="3" maxlength="3"></td>
</tr>
<tr>
<td>
Двери</td>
<td
align="center"><input type="text" name="kol_vo_dverey" size="3" maxlength="3"></td>
</tr>
<td>
Адрес клиента</td>
<td
align="center"><input type="text" name="adres_znachenie" size="30" maxlength="30"></td>
</tr>
<tr>
<td
colspan="2" align="center"><input type="submit" value="Отправить заказ"></td>
</tr>

<tr>
<td><p>
Как Вы нашли наш магазин?<br></td>
<td>
<select
name="reklama">
<option>
Выберите способ</option>
<option
value = "a">Я всегда здесь беру товары
<option value = "b">Услышал рекламу по ТВ
<option value = "c">Сообщили знакомые
<option value = "d">Прочитал в Интернете
</select>
</td>
</tr>

</table>
</form>

</body>


файл progressorder

<body>
<h1>
Магазин автозапчастей</h1>
<h2>
Добро пожаловать!</h2>
<?php

error_reporting(E_ALL);
error_reporting( E_ALL & E_STRICT );

$kol_vo_diskov = $_POST['kol_vo_diskov'];
$kol_vo_shin = $_POST['kol_vo_shin'];
$kol_vo_dverey = $_POST['kol_vo_dverey'];
$adres_znachenie = $_POST['adres_znachenie'];
$reklama = $_POST['reklama'];


$zakazano_detaley = 0; /* по книге $totalqty*/
$summa = 0.00; /* по книге $totalamount */


define ("DISKI_PRICE", 100); /* константы (неизменяющееся значение) принято записывать прописными буквами */
define ("SHINY_PRICE", 10);
define ("DVERI_PRICE", 4);



$zakazano_detaley = $kol_vo_diskov + $kol_vo_shin + $kol_vo_dverey;
$summa = $kol_vo_diskov * DISKI_PRICE
+ $kol_vo_shin * SHINY_PRICE
+ $kol_vo_dverey * DVERI_PRICE;


echo "Всего заказано на сумму ". $summa ." рублей";
echo "<br>\n";



if ($zakazano_detaley == 0)
{
echo "<br><b> <font color = red>";
echo "Вероятно, произошла ошибка. Ваш заказ пришел пустым. Пожалуйста, попробуйте снова.<br><br>";
echo "</font></b>";
?>

<form
action="progressor.php" method="post">
<table
border="0">
<tr
bgcolor="#cccccc">
<td
wigth=150>Наименование</td>
<td
width="15">Количество</td>
</tr>
<tr>
<td>
Диски</td>
<td
align="center"><input type="text" name="kol_vo_diskov" size="3" maxlength="3"></td>
</tr>
<tr>
<td>
Шины</td>
<td
align="center"><input type="text" name="kol_vo_shin" size="3" maxlength="3"></td>
</tr>
<tr>
<td>
Двери</td>
<td
align="center"><input type="text" name="kol_vo_dverey" size="3" maxlength="3"></td>
</tr>
<tr>
<td
colspan="2" align="center"><input type="submit" value="Отправить заказ"></td>
</tr>
</table>
</form>

<?php

}


else
{
echo "<p>Вы сейчас выбрали:<br>";

if ( $kol_vo_diskov>0 )
echo "- ".$kol_vo_diskov." дисков<br>";
if ( $kol_vo_shin>0 )
echo "- ".$kol_vo_shin." шин<br>";
if ( $kol_vo_dverey>0 )
echo "- ".$kol_vo_dverey." дверей<br>";
if ( $adres_znachenie == true )
echo "Адрес клиента: ".$adres_znachenie."<br>";

echo "<br>Всего заказано товаров: ".$zakazano_detaley."<br>\n";
echo "Стоимость товаров: ".$summa."<br>\n";

define ("NALOG_PRICE", 0.10); //налог с продаж составляет 10 процентов
$nalog = $summa * NALOG_PRICE;
echo "<br>Сумма налога составляет: ".$nalog."<br>\n";

$summa_s_nalogom = $summa + $nalog;
echo "Сумма с учетом налога: ".$summa_s_nalogom."<br>\n";

echo "<p>Вы сделали заказ ";
echo date("H:i, j F");
echo "<br>";

echo "<br><b> <font color = green>";
echo "Спасибо за посещение нашего магазина";
echo "</font></b>";
}



if ( $reklama == "a" )
echo "1";
elseif ( $reklama == "b" )
echo "2";
elseif ( $reklama == "c" )
echo "3";
elseif ( $reklama == "d" )
echo "4";
else
echo "<p>Цикл работает, а данных в переменной нет</p>";


switch ($reklama)
{
case "a":
echo "<p>Спасибо, что всегда берете у нас товары.</p>";
break;
case "b":
echo "<p>И реклама на ТВ дает свои результаты.</p>";
break;
case "c":
echo "<p>Хорошо, когда есть друзья.</p>";
break;
case "d":
echo "<p>Да, Интернет - это сила!</p>";
break;
default:
echo "<p>К сожалению, Вы не указали как нашли наш магазин.</p>";
break;
}

?>

<table
border = 0 cellpadding="3">
<tr>
<td
bgcolor="#CCCCCC" align="center">Растояние, в км</td>
<td
bgcolor="#CCCCCC" align="center">Оплата провоза</td>
</tr>

<?php

$rastoyanie = 50;
while ( $rastoyanie <= 250 )
{
echo "<tr>\n <td align = center> $rastoyanie </td>\n";
echo "<td align = center>". $rastoyanie / 10 . "</td>\n</tr>\n";
$rastoyanie += 50;
}

//другой цикл с тем же результатом
for ( $rastoyanie = 50; $rastoyanie <= 250; $rastoyanie += 50 )
{
echo "<tr>\n <td align = right> $rastoyanie </td>\n";
echo "<td align = right>". $rastoyanie / 10 . "</td>\n</tr>\n";
}


//запись информации о заказе в файл
//подготовка записи

$date = date("H:i, j F");
$zapisat_v_file = $date."\t Новый заказ: \t".$kol_vo_diskov." дисков,
\t".$kol_vo_shin." шин,
\t".$kol_vo_dverey." дверей,
\t Всего ".$zakazano_detaley." деталей.
\t Заказ на сумму: ".$summa." рублей.
\t Адрес: ".$adres_znachenie."\t\t\n";
//открытие файла и запись
$fp = fopen ( "DOCUMENT_ROOT/../111.txt", "a+" );
fwrite ( $fp, $zapisat_v_file );

//закрытие файла (не обязательно, но для саморазвития)
fclose ( $fp );

?>
</table>


</body>

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.