Выбрать главу

Листинг 15. erroractivation.html Путь: /news/chat/admin/ erroractivation.html

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8">

<link rel="stylesheet" type="text/css" href="/chat/style.css" />

<title>Ошибка активациии</title>

</head>

<body>

<div style="float:none; display:inline-block; ">

<h5 class="ingress" style="text-align:center;">

Вы не активировали аккаунт, <br>

проверьте сообщения в почтовом ящике,<br>

указанном вами при регистрации

</h5>

</div>

<div>

<h5 class="ingress"><a href="/">Вернуться на главную страницу</a></h5>

</div>

</body>

</html>

Здесь вопросов быть не должно. Обычная html страница без кода. Часть стилей CSS заданы непосредственно на странице.

9.1.5 Кнопка выхода из раздела администрирования

Кнопка выхода из раздела администрирования «button_logout.php»

Листинг 16. button_logout.php Путь: /news/chat/admin/ button_logout.php

<!DOCTYPE html>

<html lang="en">

<head>

<link rel="stylesheet" type="text/css" href="/chat/style.css" />

</head>

<div class="logouts">

<form action="/chat/admin/logout.php" method="post" class="logout">

<input type="hidden" name="action" value="logout" />

<input type="hidden" name="goto" value="/admin/" />

<input type="submit" name="action" value="Выйти" />

</form>

</div>

</html>

Кнопка передает данные скрипту logout.php (Листинг 25) который обнуляет соответствующие переменные сессии.

После создания этих фалов пробуем зайти на страницу администрирования

news/chat/admin и посмотреть что получилось.

Рис. 16. Форма авторизации закрывает вход в личный кабинет

Заполняем поля формы и отправляем данные.

Рис. 17. Страница личного кабинета открыта

Если всё прошло нормально открывается страница доступа к личному кабинету в административном разделе. На этой странице имеется кнопка «Выход», ссылки на страницы «Комментарии» и «Пользователи», а также ссылка «Вернуться на главную страницу».

9.1.6 Страница доступ запрещен

Сами понимаете, без такой страницы никуда.

Листинг 17. accessdenied.html.php Путь: news/chat/admin/ accessdenied.html.php

<?php

include_once $_SERVER['DOCUMENT_ROOT'].'/chat/admin/clean.php';

include_once $_SERVER['DOCUMENT_ROOT'].'/chat/admin/button_logout.html';

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8">

<title>Access Denied</title>

</head>

<body>

<h1>Доступ запрещен</h1>

<p><b><i><?php htmlout($error); ?></i></b></p>

<p><a href="/">Вернуться на главную страницу</a></p>

</body>

</html>

Страница будет выводиться, в случае если у пользователя нет прав для доступа к панели управления. Допустим, user захочет войти на страницу, доступную только пользователю с правами admin. «Доступ запрещен» будет выводиться по результатам проверки в файле access.php, на странице index раздела admin вместо основной страницы.

9.2. Статистика комментариев

9.2.1 Страница комментариев

Создаем страницу просмотра статистики комментариев «comment.html.php»

Листинг 18. comment.html.php Путь: news/chat/admin/ comment.html.php

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<link rel="stylesheet" type="text/css" href="/chat/style.css" />

<title>Листинг комментариев</title>

</head>

<body class="chatbody">

<h1 class="user">Статистика комментариев</h1>

<div class="statwrap" id="">

<!– Вставляем блок формы поиска –>

<div class="statone" id="">

<?php include_once $_SERVER['DOCUMENT_ROOT'].'/chat/admin/search.html.php'; ?>

</div><!– END statone –>

<div class="stattwo" id="">

<h5 class="user">Комментарии</h5>

<?php

if (isset($says)) {

foreach ($says as $say) : ?>

<p class="stat">

<?php

echo '<span style="color:cadetblue;">' . ' ' . $say['id'] . ' ' . '</span>';

//убираем смайлы

$patterns = '/(:([^>]+):)/U';

$replace = ' smile* ';

$clean = $say['text'];

$text = preg_replace($patterns, $replace, $clean);

echo $text;

$t = time($say['saydate']);

echo '<span style="color:cadetblue;">' . ' ' . date("d.m.Y", "$t") . '</span>'; ?>

</p>

<?php endforeach;

} ?>

</div><!– END stattwo –>

<div class="statthree" id="">

<h5 class="user">Ответы на комментарии</h5>

<?php

if (isset($replys)) {

foreach ($replys as $reply) : ?>

<p class="stat"><?php

echo '<span style="color:cadetblue;">' . ' ' . $reply['replyid'] . ' ' . '<-' . ' ' . '</span>';

//убираем смайлы

$patterns = '/(:([^>]+):)/U';

$replace = ' smile* ';

$clean = $reply['replytext'];

$text = preg_replace($patterns, $replace, $clean);

echo $text;

//время

$t = time($reply['replydate']);

echo '<span style="color:cadetblue;">' . ' ' . date("d.m.Y", "$t") . '</span>'; ?>

</p>

<?php endforeach;

} ?>

</div><!– END statthree –>

</div><!– END statwrap –>

<br />

<div class="return"><a href="/chat/admin/">Вернуться</a></div>

</body>

</html>

Страница функционально состоит из трех блоков:

• Блок с данными пользователей и формой поиска.

• Блок, отображающий комментарии.