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

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

Год написания книги
2021
Теги
<< 1 ... 48 49 50 51 52 53 54 55 56 ... 78 >>
На страницу:
52 из 78
Настройки чтения
Размер шрифта
Высота строк
Поля

$result2 = $dsn->prepare($sql);

$result2->execute([

'login' => $login,

'password' => $password,

'email' => $email,

'img' => $avatar,

'date' => $date

]);

$role = 'user';

$authorid = $dsn->lastInsertId();

$sql = "INSERT INTO authorrole (authorid,roleid) VALUE (:authorid,:roleid)";

$resultrole = $dsn->prepare($sql);

$resultrole->execute([

'authorid' => $authorid,

'roleid' => $role

]);

echo '<img src="' . $avatar . '">';

echo ' ' . '<h3>' . $login . '</h3>' . ' ' . "Вы успешно зарегистрированы! <a href='/index.html'>Главная страница</a>";

} catch (PDOException $e) {

echo "You have an error: " . $e->getMessage() . "<br>";

echo "On line: " . $e->getLine();

}

$activation = md5($authorid) . md5($login);

$subject = "Подтверждение регистрации"; //тема сообщения

$message = "Здравствуйте! Спасибо за регистрацию в модуле комментариев chat\nВаш логин: " . $login . "\n

Перейдите по ссылке, чтобы активировать ваш аккаунт:\nhttp://" . $_SERVER['HTTP_HOST'] . "/chat/admin/users/activation.php?login=" . $login . "&code=" . $activation . "\nС уважением,\n

Администратор модуля"; //содержание сообщение

mail($email, $subject, $message, "Content-type:text/plane; Charset=utf-8\r\n"); //отправляем сообщение

echo "<hr><h3>Вам на E-mail выслано письмо с cсылкой, для подтверждения регистрации.</h3> <br><b>Внимание! Ссылка действительна 1 час.</b>"; //говорим о отправленном письме пользователю

В этом скрипте проверяются данные пользователя и сохраняются в БД. Обработка изображений для аватара сделана только для квадрата, т.к. PHP это язык серверный и обработка изображений явно не его конек. Результаты при обработке прямоугольников мягко говоря разочаровывают, поэтому загрузка и обработка прямоугольных исходников не предусмотрена. Лучше взять готовый или подготовить аватар в графическом редакторе. Код в данном скрипте прокомментирован практически построчно, думается вопросов быть не должно.

С административным разделом закончили, приступаем к комментариям.

22. Комментарии

Для работы с комментариями используем папку «say», созданную ранее в разделе 3. На данном этапе она пуста и кроме папки «smiles» в которой хранятся заранее подготовленные смайлы в ней ничего нет.

23. Контроллер 3

Для вывода комментариев создаем контроллер 3 «say_controller.php».

Листинг 38. say_controller.php Путь: news/chat/ say_controller.php

<?php

error_reporting(E_ALL);

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

include $_SERVER['DOCUMENT_ROOT'].'/chat/function/print_comment.php';

include $_SERVER['DOCUMENT_ROOT'].'/chat/function/print_smile_set.php';

$page_id = $_SERVER['PHP_SELF']; //индексируем страницу

/* Если пользователь авторизован вставляем ссылку Добавить комментарий */

if (isset($_SESSION['login'])) {

$userid = $_SESSION['userid'];

echo '<div class="addsay" id=""><a href="?addsay" class="aaddsays">Добавить комментарий</a></div>';

}

else {

$userid = '';

}
<< 1 ... 48 49 50 51 52 53 54 55 56 ... 78 >>
На страницу:
52 из 78