Архив рассылки -программирование на PHP




Будьте внимательны!


Будьте внимательны!
Мы ее сохранили в файле /inc/voting_form.inc, как договаривались.

Теперь давайте ее разберем. Не такая уж она простая, как может показаться на первый взгляд.

Во-первых, прошу обратить внимание, что регистрация мнения будет у нас реализовываться в этом же файле — /text/index.php. То есть подтверждение формы приведет пользователя на эту же страницу, только с информацией: было его мнение засчитано, или не было (и по какой причине).

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

Вывод осуществляется обычным способом, через echo имени соответствующей переменной, кроме случая с оценкой. Тут вообще разговор особый.

Если мне не изменяет память, мы еще ни разу не пользовались замечательной функций цикла foreach. К сожалению, до четвертой версии этой функции в PHP не было. И очень это было неудобно.

Смысл foreach состоит в том, что это функция цикла как и for, только количество повторений напрямую зависит от количества перебираемых значений.

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

В данном случае, мы не знаем, какое количество оценок предусмотрено нашей системой. Все оценки мы разместили в переменном ассоциативном массиве $VOTING_MENU, где каждая оценка состоит из словесного названия и соответствующей ему оценке числовой.

Я пока сделал такой вариант (в этом же виде сия переменная добавлена в /req/vars.class:

// Оценки var $VOTING_MENU=array("Отвратно"=>-5, "Никак"=>0, "Отлично"=>5);
Заодно вспомнили (а кто и впервые узнал) как инициируется ассоциативный массив со значениями.

Так вот, в форме есть небольшой фрагмент php-кода — выпадающее меню оценок, которое выстраивается на лету, на основе переменной $VOTING_MENU с использованием цикла foreach.

foreach последовательно перебирает массив, передавая переменной $k (от key) ключ, т.е.









Начало    Назад    Вперед




Книжный магазин