Эта система содержит всего два файла: comment.php
и postcomment.php
. Для использования поместите следующие строки кода там, где вы желаете отображение комментариев, например, на странице index.php
:
<?php
date_default_timezone_set('UTC+3');
include("comment.php");
comment("index");
?>
Где comment("index")
- это url страницы, которая будет содержать комментарии. Вызов date_default_timezone_set ()
необходим, чтобы избежать предупреждения при вызове функции date ()
(может использоваться часовой пояс, отличный от UTC+3
).
Содержание файла comment.php:
function comment($pageName) {
echo '<div id="comment"><p><span style="font-size: 18px;">Комментарии:</span></p>';
if (file_exists($pageName.".txt")) {
$fileC = file($pageName.".txt");
foreach ($fileC as $line) {
$arr = explode("~", $line);
echo "<b>".$arr[0]."</b> at ".date("D M j Y", $arr[1]).":";
echo "<blockquote style='margin-top: 0px;'>".$arr[2];
echo "</blockquote>";
}
}
else {
echo "Нет комментариев!";
}
echo '<hr width="100%" />
<div id="write">
<p><span style="font-size: 18px;">Написать комментарий:</span></p>
<form method="post" action="postcomment.php">
<table>
<tr><td width="100">Имя</td><td><input type="text" name="name" style="width: 400px;" /></td></tr>
<tr><td>Комментарий</td><td><textarea name="comment" rows="10" cols="40" style="width: 400px; height: 100px;"></textarea></td></tr>
<tr><td></td><td align="right"><input type="submit" name="submit" value="Отправить" /></td></tr>
</table>
<input type="hidden" name="page" value="'.$pageName.'" />
</form>
</div>
</div>';
}
И содержание обработчика postcomment.php:
if ($_POST['page'] != '' && $_POST['name'] != '' && $_POST['comment'] != '' && file_exists($_POST['page'].".php")) {
$name = str_replace("~", "", $_POST['name']);
$comment = str_replace("~", "", $_POST['comment']);
$name = strip_tags($name);
$comment = strip_tags($comment);
$comment = nl2br($comment, TRUE);
$comment = str_replace(array("\r\n", "\r", "\n"), "", $comment);
$name = substr($name, 0, 100);
$comment = substr($comment, 0, 5000);
$tfile = $_POST['page'].".txt";
if (file_exists($tfile)) {
$str = file_get_contents($tfile)."\n";
} else {
$str = '';
}
$str .= $name."~".time()."~".$comment;
file_put_contents($tfile, $str);
}
header("Location: ". $_POST['page'].".php");