Иллюстрированный самоучитель по PHP

Файл otziv.php

Можно выводить информацию посетителю об итоговом результате (рис. 10.6) или краткую благодарность.

echo ("Благодарим вас за оценку!");

Иллюстрированный самоучитель по PHP › Система оценки материалов › Файл otziv.php
Рис. 10.6. После успешного голосования

Если же посетитель уже голосовал за данную статью…

}
else {

…то сообщим ему об этом (рис. 10.7) – и ничего делать не станем:

echo ("Вы уже голосовали за эту статью!");
}

Сценарий закончен.

?>

Иллюстрированный самоучитель по PHP › Система оценки материалов › Файл otziv.php

Рис.10.7. После попытки повторного голосования

Остальной текст страницы – на ваше усмотрение. Разместите на ней каталог разделов сайта, список статей или просто красиво оформите. Если же пожелаете поставить на ней ссылку на оцениваемую статью – то просто разместите в нужном месте выводящий эту ссылку код:

<?php echo ("<a href=$nazad>Haзaд</a>");?>

Переменная Snazad была передана через форму, помните?

Комментарий
В данном сценарии для упрощения восприятия значения переменных, передаваемых через форму, брались из одноименных переменных в сценарии-обработчике – так как на безопасность работы программы это здесь не влияет: даже если злоумышленник подставит значение переменной cookie в адресную строку, то он только потеряет возможность проголосовать, и ничего больше. Если вы желаете сделать код лучше соответствующим правилам РНР – замените их на одноименные элементы массива $HTTP_POST_VARS[] (в РНР версии до 4.1) или SPOSTfJ (в РНР версии 4.1 и старше)
.

Как всегда, сценарий можно совершенствовать до бесконечности. Можно, например, совместить его с разбиравшемся в предыдущей главе сценарием гостевой книги – тогда посетители наряду с оценкой статьи могут оставить и свой отзыв на нее. Можно увеличить количество возможных оценок, которые посетители могут выставлять статьям – использовать 10-балльную или иную систему.

Все в вашей власти – творите…

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.