重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
WordPress功能全面,模板丰富,既然楼主觉得复杂,还有几款其他的系统也可以不错。
在西充等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、做网站 网站设计制作按需开发网站,公司网站建设,企业网站建设,成都品牌网站建设,全网营销推广,外贸网站建设,西充网站建设费用合理。
比如sablog,速度不错,安全性事它最大的特点,很多人在用它,不足的就是已经停止维护了,如果楼主对PHP有一定基础可以研究修改使用。
bo-blog也很多人用,功能方面和WordPress差不多,速度不错。
SaBlog-X 也可以考虑,后台和Discuz!的差不多..模板较少
Emlog最近新兴起的一个程序,速度非常快,特别是写日志的页面很舒服,博客该有的功能也都有,楼主可以试试。
还有比如F2blog,C-blog,Exblog等等。
用PHP来制作评论系统
在PHP and mySQL的环境下运行。有三个文件:comments.php, 是用来显示[评论的, commentadd.php, 用来处理评论内容的, and commentform.html 通过FROM来提交评论。
1.首先建立一个数据库,如果已经建立则建立一个符合条件的表:
CREATE TABLE `comtbl` (
`postID` INT NOT NULL AUTO_INCREMENT ,
`postTITLE` TEXT NOT NULL ,
`posterNAME` TEXT NOT NULL ,
`posterEMAIL` TEXT NOT NULL ,
`postTIME` TIMESTAMP NOT NULL ,
`postTXT` TEXT NOT NULL ,
PRIMARY KEY ( `postID` )
);
评论查看页:COMMENTS.PHP,具体内容为(有用户名和密码的在实际工作中要改变):
$dbcnx = mysql_connect("localhost", "username", "password");
mysql_select_db("comments");
接下来需要对表进行查询,并且把ID 按Descending: 顺序排序:
$result = mysql_query("SELECT * FROM comtbl ORDER BY postID DESC");
if (!$result) {
echo("bError performing query: " . mysql_error() . "/b");
exit();
}
在这里因为要读出好多条记录,所以用循环来读,具体程序如下:
while ($row = mysql_fetch_array($result) ) {
$msgTxt = $row["postTXT"];
$msgId = $row["postID"];
$SigName = $row["posterNAME"];
$SigDate = $row["postTIME"];
$msgTitle = $row["postTITLE"];
$url = $row["posterEMAIL"];
现在到了最关键的一步了,也是困难的一步: 因为在这里用到MySQL's TIMESTAMP 函数 (功能是可以自动的饿把时间添加到一个表中),并且需要取得时间的字符串,使用字符串函数substr() ( $yr 表示年, $mo 表示月, 等等):
$yr = substr($SigDate, 2, 2);
$mo = substr($SigDate, 4, 2);
$da = substr($SigDate, 6, 2);
$hr = substr($SigDate, 8, 2);
$min = substr($SigDate, 10, 2);
还需要对上述代码的功能加以扩充来实现12或24小时表示或者用 AM和PM来表示上下午,代码如下:
if ($hr "11") {
$x = "12";
$timetype = "PM";
$hr = $hr - 12;
}else{
$timetype = "AM";
}
另外,当评论者要是留下Email 的话,我们可以在这里来建立一个连接实现联系发评论的人.代码如下:
if (!$url) {
$url = "#";
}else{
$stat = $url;
$url = "mailto:" . $url . "";
}
最后,我们可以按行来显示数据,并且关闭循环,最终的显示代码如下:
echo("pb$msgTitle/b
$msgTxtbr
div align=right$hr:$min $timetype | $mo/$da/$yr | $msgId, a href='$url'$SigName/a/div/p");
}
pbMessage Title/b
Text within the message, blah blahbr
div align=rightHour:Minute AM/PM | Month/Day/Year | Message ID, a href='mailto:test@test点抗 'Name with email link/a/div/p
表单处理的程序: COMMENTADD.PHP
首先我们设置一些变量,然后通过表单把变量获得的数据提交到后台数据库中,并且请记住用户名和密码。
$assume = $_POST['assume'];
$posterEMAIL = $_POST['postemail'];
$postTXT = $_POST['posttxt'];
$posterNAME = $_POST['poster'];
$postTITLE = $_POST['posttitle'];
if ($assume == "true") {
$dbcnx = mysql_connect("localhost", "username", "password");
mysql_select_db("comments");
$sql = "INSERT INTO comtbl SET posterNAME='$posterNAME', posterEMAIL='$posterEMAIL',
postTXT='$postTXT', postTITLE='$postTITLE'";
if (mysql_query($sql)) {
echo("PYour comment has been added/P");
} else {
echo("PError adding entry: " . mysql_error() . "/P");
}
}
提交了自己的评论之后还要有跳转的功能,下面的Javascript代码就可以实现跳转到指定的页面。
script language=javascript
!--
location.href="comments.php";
//--
/script
下面是具体的COMMENTFORM.HTML代码,通过下面的内容,可以让发表评论者发表评论,然后通过提交可以把数据提交到commentadd.php里面来实现数据的在线提交。
form action="commentadd.php" method=post
input type="text" name="poster" size="23" value="name"br /
input type="text" name="posttitle" size="23" value="name"br /
input type="text" name="postemail" size="23" value="user@email点抗 "br /
textarea cols=44 rows=6 name="posttxt" size=24 wrap="VIRTUAL"messagebr /
input type=hidden name=assume value=true
input type="submit" value="submit"
下面是处理评论的代码 comments.php:
?
$dbcnx = mysql_connect("localhost", "username", "password");
mysql_select_db("comments");
$result = @mysql_query("SELECT * FROM comtbl ORDER BY postID DESC");
if (!$result) { echo("bError performing query: " . mysql_error() . "/b");
exit();
}
while ($row = mysql_fetch_array($result) ) {
$msgTxt = $row["postTXT"];
$msgId = $row["postID"];
$SigName = $row["posterNAME"];
$SigDate = $row["postTIME"];
$msgTitle = $row["postTITLE"];
$url = $row["posterEMAIL"];
$yr = substr($SigDate, 2, 2);
$mo = substr($SigDate, 4, 2);
$da = substr($SigDate, 6, 2);
$hr = substr($SigDate, 8, 2);
$min = substr($SigDate, 10, 2);
if ($hr "11") {
$x = "12";
$timetype = "PM";
$hr = $hr - 12;
}else{
$timetype = "AM";
}
if (!$url) {
$url = "#";
}else{
$stat = $url;
$url = "mailto:" . $url . "";
}
echo("pb$msgTitle/b $msgTxtbrdiv align=right
$hr:$min $timetype | $mo/$da/$yr | $msgId, a href='$url'$SigName/a/div/p");
}
?
下面是 commentadd.php:
?
$assume = $_POST['assume'];
$posterEMAIL = $_POST['postemail'];
$postTXT = $_POST['posttxt'];
$posterNAME = $_POST['poster'];
$postTITLE = $_POST['posttitle'];
if ($assume == "true") {
$dbcnx = mysql_connect("localhost", "username", "password");
mysql_select_db("comments");
$sql = "INSERT INTO comtbl SET posterNAME='$posterNAME', posterEMAIL='$posterEMAIL',
postTXT='$postTXT', postTITLE='$postTITLE'";
if (mysql_query($sql)) {
echo("Your comment has been added");
} else {
echo("Error adding entry: " . mysql_error() . "");
}
}
?
script language=javascript
!--
location.href="comments.php";
//--
/script
1. 不需要给每条数据编号,编号会带来各种各样的麻烦,直接使用数据的主键就是id就好了。
2. 点击按钮后直接ajax向服务器发请求,成功后直接$("你的按钮选择器").html("新的值")就可以了,前提是你要将jquery引入你的网站,不然只能通过js的标准方法,比较麻烦。
3. 按钮的id就直接设置成 button_数据的id,这样在ajax提交时也就可以直接从按钮的id获取到数据的id了,一举两得。
可以自己进行编写评论的留言板块,也可以使用网上现成的查件,最近使用的畅言评论系统就非常好用,支持PC端和移动端,同时支持自适应,只需要进行设置就可以获得代码,简单方便!