Оценить:
 Рейтинг: 0

PHP. Разработка модуля комментариев для сайта

Год написания книги
2021
Теги
<< 1 ... 57 58 59 60 61 62 63 64 65 ... 78 >>
На страницу:
61 из 78
Настройки чтения
Размер шрифта
Высота строк
Поля

}

if (isset($_POST['actionnot']) and $_POST['actionnot'] == "Отмена") {

header("Location: /");// Делаем редирект

exit();

}

В этом файле происходит обработка данных переданных из формы form_editsay.html.php. Контролируется нажатие кнопок «Редактировать», «Отмена» и вставки исмайлов. Производится обновление текста комментария и добавление обновленного текста в БД.

31. Создаем массив ответов на комментарии

Для этого используем скрипт list_reply.php

Листинг 47. list_reply.php Путь: news/chat/say/ list_reply.php

<?php

/* Формируем массив ответов на комментарии */

/* SELECT say.id, say.userid, say.saydate, say.saytext, users.login, users.img FROM say INNER JOIN users ON users.`id` = say.userid */

try {

$sql = 'SELECT reply.id, reply.userid, reply.replydate, reply.replyid, reply.replytext, users.login, users.img FROM reply INNER JOIN users ON users.id = reply.userid';

$stm = $dsn->query($sql);

} catch (PDOException $e) {

echo $e->getMessage();

echo $e->getLine();

exit();

}

foreach ($stm as $rows) {

$reply[] = array(

'id' => $rows['id'],

'replytext' => $rows['replytext'],

'userid' => $rows['userid'],

'replyid' => $rows['replyid'],

'img' => $rows['img'],

'login' => $rows['login'],

'replydate' => $rows['replydate'],

'userid' => $rows['userid']

);

}

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

32. Обертка вывода ответов на комментарии

Для печати комментариев служит страница print_reply.html.php

Листинг 48. print_reply.html.php Путь: news/chat/say/ print_reply.html.php

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

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

</head>

<div class="wrap_reply_form" id="">

<?php

if (isset($reply)) {

foreach ($reply as $replylist) :

/* Активация кнопок */

if (userHasRole('admin')) {

$buttonactive = 'submit'; //если админ делаем активными все кнопки

} elseif ($replylist['userid'] == $userid) {
<< 1 ... 57 58 59 60 61 62 63 64 65 ... 78 >>
На страницу:
61 из 78