<br/>
</form>
</body>
</html>
Это HTML форма в которой можно отредактировать комментарий. Состоит из:
• Поле редактирования textarea со значением по умолчанию равным $_POST['saytext'].
• Кнопок «Редактировать» и «Отмена».
• Набор для выбора доступных смайлов.
30. Скрипт редактирования комментариев
Для редактирования комментариев служит файл sayedit.php
Листинг 46. sayedit.php Путь: news/chat/say/ sayedit.php
<?php
error_reporting(E_ALL);
if(session_id() == '') {session_start();}
include_once $_SERVER['DOCUMENT_ROOT'] .'/chat/admin/clean.php';
include $_SERVER['DOCUMENT_ROOT'].'/chat/function/print_smile_set.php';
/* Сохраняем переменную идентефикатор поста */
if (isset($_POST['textedit']) and $_POST['textedit'] != ""){
$_SESSION['idsave'] = $_POST['textedit'];
} else {
$_POST['textedit'] = $_SESSION['idsave'];
}
/* Заносим в базу и делаем редирект */
if (isset($_POST['sayedit']) and $_POST['sayedit'] == "Редактировать") {
try {
include_once $_SERVER['DOCUMENT_ROOT'].'/chat/dsn.php';
$sql = 'UPDATE say SET saytext = :saytext WHERE id = :id';
$s = $dsn ->prepare($sql);
$s->bindValue(':saytext', $_POST['saytext']);
$s->bindValue(':id', $_POST['sayid']);
$res = $s->execute();
unset ($_SESSION['idsave']);
header("Location: /");
exit();
}
catch (PDOexeption $e) {
echo $e->getMessage();
echo $e->getLine();
exit('error.html.php');
}
exit();
}
/* Контролируем нажатия кнопок */
if (isset($_POST['actionedit']) and $_POST['actionedit'] == "Редактировать") {
include $_SERVER['DOCUMENT_ROOT'].'/chat/say/form_editsay.html.php';
exit();
}
if (isset($_POST['smile'])) {
$_POST['saytext'] = $_POST['saytext'].$_POST['smile'];
include $_SERVER['DOCUMENT_ROOT'].'/chat/say/form_editsay.html.php';