CREATE TABLE IF NOT EXISTS `comment` (
`id` int(11) unsigned NOT NULL auto_increment,
`page_id` int(11) unsigned NOT NULL default '0',
`body` text,
`author_name` varchar(50) default NULL,
`author_email` varchar(100) default NULL,
`is_approved` tinyint(1) unsigned NOT NULL default '1',
`created_on` datetime default NULL,
PRIMARY KEY (`id`),
KEY `page_id` (`page_id`),
KEY `created_on` (`created_on`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
<div id="comments">
<h3 style="cursor: pointer" name="addcomment">» Оставить комментарий</h3>
<div id="comment-form" style="display: none;">
<form name="add-comment" method="post">
<p>Имя</p> <input type="text" name="author-name" style="width: 200px"><br />
<p>E-mail</p> <input type="text" name="author-mail" style="width: 200px"><br />
<p>Комментарий</p> <textarea name="comment" cols="70" rows="10"></textarea>
<br />
<input type="submit" value="Прокомментировать" name="send-comment">
</form>
</div>
<h3>Комментарии</h3>
<?php
$conn = Record::getConnection();
$sql = 'SELECT * FROM '.TABLE_PREFIX.'comment WHERE page_id=? AND is_approved=0';
$sth = $conn->prepare($sql);
$sth->execute(array($this->id()));
$comments = $sth->fetchAll();
foreach ($comments as $item)
{
?>
<div id="comment">
<span class="author-name"><?php echo $item['author_name']; ?></span>
<span class="author-mail"><?php echo $item['author_email']; ?></span>
<p class="comment-body"><?php echo $item['body']; ?></p>
</div>
<?php
}
?>
</div>
<script language="javascript">
$("h3[name=addcomment]").bind("click", function() {
$("#comment-form").slideToggle(200);
});
$("input[name=send-comment]").bind("click", function() {
var author = $("input[name=author-name]").val();
var email = $("input[name=author-mail]").val();
var comment_body = $("textarea[name=comment]").val();
$.post("<?php echo $this->url(); ?>", {name: author, mail: email, comment: comment_body});
$("#comment-form").html('<p style="color: green">Комментарий отправлен.</p>');
return false;
});
</script>
<?php
// FOR COMMENTS SYSTEM
if (isset($_POST['name']) && isset($_POST['mail']) && isset($_POST['comment']))
{
if (!empty($_POST['name']) && !empty($_POST['mail']) && !empty($_POST['comment']))
{
print_r($_POST);
$conn = Record::getConnection();
$sql = "INSERT INTO ".TABLE_PREFIX."comment (page_id, body, author_name, author_email) VALUES (?, ?, ?, ?)";
$sth = $conn->prepare($sql);
$sth->execute(array($this->id(), $_POST['comment'], $_POST['name'], $_POST['mail']));
}
}
// ---END COMMENTS SYSTEM
?>
<?php $this->includeSnippet('header'); ?>
<div id="middler">
<section id="post-content">
<?php if($this->slug) echo($this->breadcrumbs(' » ')); ?>
<h1><?php echo $this->title(); ?></h1>
Тэги: <i><?php echo implode(', ',$this->tags()); ?></i><br />
Дата: <i><?php echo $this->date('%d.%m.%y %H:%M'); ?></i><br />
<?php echo $this->content(); ?>
Автор: <i><?php echo $this->author(); ?></i><br /><br />
<?php $this->includeSnippet('comments'); ?>
</section>
</div><!--/#middler-->
<?php $this->includeSnippet('footer'); ?>
/*
comments
*/
#comments {
display:block;
position: relative;
width: 100% auto;
}
#comments h3 {
border-top: 1px solid #e3e4e6;
margin: 1em 0;
padding-top: .5em;
color: #E7431D;
}
#comment-form input,textarea {
border: 1px solid #bbb;
background: #fff;
padding: 5px;
}
.comments-header {
font-size:120%;
width: 100%;
margin:1em 0;
color:#E7431D;
padding-bottom:.5em;
border-bottom:1px solid #e3e4e6;
}
#comment {
margin-bottom: 10px;
border-bottom: 1px dashed #ccc;
}
#comment .author-name {
font-weight: bold;
font-size: 90%;
background: url('../images/comment-user.png') no-repeat;
padding-left: 20px;
}
#comment .author-mail {
margin-left: 30px;
font-size: 90%;
background: url('../images/comment-mail.png') no-repeat;
padding-left: 20px;
}
#comment .comment-body {
border-left: 10px solid #ccc;
padding-left: 10px;
font-size: 90%;
}
On 9 дек, 08:15, sartas <ardua...@gmail.com> wrote:
> Рабочая версия комментариев, админка правда немного кривая, надо поправить
> стили.
>
> comments.tar.gz
> 90KПросмотретьЗагрузить
On 9 дек, 08:15, sartas <ardua...@gmail.com> wrote:
> Рабочая версия комментариев, админка правда немного кривая, надо поправить
> стили.
>
> comments.tar.gz
> 90KПросмотретьЗагрузить