PHP: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <title>Конструкции</title> </head> <body> <?php /* Задаем значения переменным значение массива POST */ $k = $_POST[1]; $t = $_POST[2]; $o = $_POST[3]; $l = $_POST[4]; $s = $_POST[5]; /* Задаем оснвные переменные */ $korova = "карьера" ; $tigr = "честь и достоинство"; $ovtsa = "любовь и секс"; $loshad = "семья"; $svin = "деньги"; /* Задаем условие не равенства коротких переменных */ if ($k != $t and $k != $o and $k != $l and $k != $s and $t != $o and $t != $l and $t != $s and $o != $l and $o != $s and $l != $s) { /* Условия для переменной $K */ if ($k <= 5 and $k > 0) { echo "На $k месте в жизни для Вас $korova <br><br> "; } else { echo "Вы не верно ввели число в первом поле<br><br>"; } /* Условия для переменной $t */ if ($t <= 5 and $t > 0) { echo "На $t месте в жизни для Вас $tigr <br><br> "; } else { echo "Вы не верно ввели число во втором поле<br><br>"; } /* Условия для переменной $o */ if ($o <= 5 and $o > 0) { echo "На $o месте в жизни для Вас $ovtsa <br><br>"; } else { echo "Вы не верно ввели число в третьем поле<br><br>"; } /* Условия для переменной $l */ if ($l <= 5 and $l > 0) { echo "На $l месте в жизни для Вас $loshad <br><br>"; } else { echo "Вы не верно ввели число в четвертом поле<br><br>"; } /* Условия для переменной $s */ if ($s <= 5 and $s > 0) { echo "На $s месте в жизни для Вас $svin <br><br>"; } else { echo "Вы не верно ввели число в пятом поле"; } } else { echo "Необходимо вводить разные числа для каждого поля.<br> Числа только 1,2,3,4,5."; } ?> <form method="post" action="tets.php"> <p><input type="text" name="1" size=1> Корова </p> <p><input type="text" name="2" size=1> Тигр </p> <p><input type="text" name="3" size=1> Овца </p> <p><input type="text" name="4" size=1> Лошадь </p> <p><input type="text" name="5" size=1> Свинья </p> <p><input type="submit" name="submit" value="Результат"</p> </form> </body> </html>
1. Этот код практического смысла не имеет. Как я понимаю, многие переименовывают переменные, чтобы сократить названия, не использовать кнопки. Но плюсы на этом и заканчиваются. Когда Вы пишите в коде echo $_POST..., то понимаете, что данные могут быть опасны и защищаетесь. Но когда Вы пишите echo $a, то можно и забыть, что данные берутся извне или пренебречь экранированием (или проверками), подумав, что если переменная переименована, значит она где-то обрабатывалась. 2. http://ru.wikipedia.org/wiki/%D0%A1%D1% ... 0%BE%D0%B2 3. Что будет, если я открою страницу? В первый раз форма не отправляется! phpfaq.ru/debug 4. Подумайте, как уменьшить количество кода. Можно использовать массивы, циклы. 5. Имена формам лучше давать строковые (если форм не сто штук). Легче для идентификации.
Прошу сразу перейти на "Ты."=)) 1.Не совсем понял - присвоение $k = $_POST[1]; Это хорошо или плохо? 2.Какого стиля лучше придерживаться? И есть ли у редакторов фенкция отступов? или пробелами выбивать?
Сам не использую и другим не рекомендую, потому как считаю это плохим тоном. Какого нравится. Из всего кода, что видел, чаще используют K&R с 1-2 табуляциями.
А мне нравится PHP: <?php $name = isset ($_POST['username_from_form']) ? Text::Clean ($_POST['username_from_form']) : null; ?> Правда конкретно так никогда не пишу (в крупных проектах), но смысл такой же.
В твоем случае это нормально. Я писал про случаи, когда никакой обработки и проверки не делается вообще, когда идет простое присвоение.
PHP: <?php $result = $_POST[2] - $_POST[1]; $podchet = ($result - 50) * 3.4; $finish = $podchet + 95; if ($_POST[1] < $_POST[2]) { echo "Расход кВт равен $result <br>"; echo "Сумаа к оплате $finish рублей." ; } else { echo "Введите верное значение"; } ?> <form method="post" action="electro.php"> <p><input type="text" name="1" size=4> Предыдущее </p> <p><input type="text" name="2" size=4> Текущее </p> <p><input type="submit" name="submit" value="Подсчитать"</p> </form> А так можно подсчитать расход электроэнергии. Ушел в учебник снова.
Kreker Мозги закипать начинают, как подумаю над тем как можно осуществить пример теста с верху с помощью циклов.
Kreker Fatal error: Call to undefined function error_reportings() in O:\home\test1.ru\www\electro.php on line 16 Не понятно.... =(
Hight Parse error: syntax error, unexpected T_STRING in O:\home\test1.ru\www\tets.php on line 16 Ладно, дойду. мануал php на русском есть?
Код (Text): <? $array=array('','Корова',' Тигр','Овца',' Лошадь','Свинья') ?> <form method="post" action="tets.php"> <? for($i=1;$i<count($array);$i++){ ?> <p><input type="text" name="<?$i?>" size=1> <?$array[$i]?> </p> <? } ?> <p><input type="submit" name="submit" value="Результат"</p> </form> так можно )
Неправильно оставлять один из элементов пустым только порядка ради. PHP: <?php // Лучший вариант $array = array(1 => 'Корова', 'Тигр', 'Овца', ' Лошадь', 'Свинья'); ?>
VampiR_WAR пробуй сразу давать осмысленные имена (в твоих книжках должно быть про это). т.е. не а HTML: <p><input type="text" name="input_cow" size=1> Корова </p>
PHP: <? $array=array('','Корова',' Тигр','Овца',' Лошадь','Свинья'); ?> <form method="post" action="tets.php"> <? for($i=1;$i<count($array);$i++){ ?> <p><input type="text" name="<? echo $i; ?>" size=1><? echo $array[$i]; ?> </p> <?} ?> <p><input type="submit" name="submit" value="Результат"</p> </form> я не тестил теперь точно работает