<fieldset class="smileset" style="<?php if (isset($_SESSION['smileblock'])) {
echo $_SESSION['smileblock'];
} ?>">
<?php print_smile_set(); ?>
</fieldset>
</div>
</div>
<br />
</form>
</body>
</html>
Это HTML форма состоящая из следующих частей:
• Поле ввода комментариев тип textarea,autofocus.
• Кнопки «Добавить», «Показать смайлы», «Скрыть смайлы» тип input submit.
• Ссылка «Отмена», при нажатии обнуляет все значения в $_GET.
• Блок смайлов, который выводит доступный набор смайлов.
28. Обработка комментариев
Для обработки комментариев служит скрипт makeformaddsay.php
Листинг 44. makeformaddsay.php Путь: news/chat/say/ makeformaddsay.php
<?php
error_reporting(E_ALL);
if(session_id() == '') {session_start();}
unset($_SESSION['txt']);
if (isset($_POST['nosay'])) {
$_GET['addsay'] ='';
header("Location: ".$_SERVER["HTTP_REFERER"]);// Делаем редирект
exit();
}
/* Проверяем наличие текста в форме */
if (empty($_POST['saytext'])) {
header("Location: ".$_SERVER["HTTP_REFERER"]);// Делаем редирект
exit();
}
if (isset($_POST['action']) and $_POST['action'] == "Добавить") {
include_once $_SERVER['DOCUMENT_ROOT'].'/chat/dsn.php';
include_once $_SERVER['DOCUMENT_ROOT'] .'/chat/admin/clean.php';
/* Получаем id текущего пользователя */
if(isset($_SESSION['userid'])) {
$userid = $_SESSION['userid'];
}
/* заносим текст в базу */
try {
$sql = 'INSERT INTO say SET
saytext = :saytext,
userid = :userid,
page_id = :page_id,
saydate = :saydate';
$s = $dsn->prepare($sql);
$saytext = html($_POST['saytext']);
$saydate = time();