电脑技术学习

用PHP建立微型论坛的简单教程

dn001
如下:
<?php
$sql="select A.ID,A.title,A.author,A.post_time,A.subject,A.face,B.groupID,B.email,
B.headimg,B.homepage,B.qq,B.MSN,B.jointime,B.no_of_post,B.sign from thread A,member B where A.topicID=$T and A.author = B.username order by A.post_time asc limit $p_start,$tread_list_rows";
$result=mysql_query($sql);
//这里的SQL语句是查询2个表,MEMBER和THREAD表。 $sqlno="select * from thread where topicID='$T'";
$number=mysql_num_rows(mysql_query($sqlno)); while($row=mysql_fetch_array($result)){ //这里是HTML代码 }
?>
果当前用户有权限发表帖子,那么每页下面将出现快速回复的表单。


点击放大

<?php
if($isguest==0){
if($_SESSION["username"] && $_SESSION["islogined"]){
//这里是快速回复的HTML表单
}
}else{
//这里是快速回复的HTML表单
} //思路也很简单,如果完全开放,自然而然就出现回复表单,允许回复;否则如果用户登陆,就出现回复表单。
?>
回复表单里要有主题帖子的ID编号。
回复的代码同样是插入,然后更新相关表。
<?php
require_once "global.php";
require_once "conn.php"$F=$_POST["F"];
$T=$_POST["T"];
$title=$_POST["title"];
$content=$_POST["Content"];
$author=$_POST["username"];
$face=$_POST["face"];$result=mysql_fetch_array($db->db_query("select isguest from forums where ID='$F'"));
$isguest=$result["isguest"];
if($isguest==0){
if(empty($_SESSION["username"])||empty($_SESSION["islogined"])){
echo "<script>alert('您尚未登陆,请先登陆!');location='login.php';</script>";
exit();
}
}
$sql="insert into thread (topicID,face,title,author,post_time,subject) values ('$T','$face','$title','$author',now(),'$content')";
$db->mysql_query($sql);
//插入表,同时记录TOPIC的主键 $sql="update topic set last_post_author ='$author',last_post_time=now(),no_of_reply = no_of_reply + 1 where ID = '$T'";
$db->mysql_query($sql);
//更新主题表,最后回复人,最后更新时间 $sql="update forums set last_post_author='$author',last_post_time=now() where ID='$F'";
$db->mysql_query($sql);
//更新论坛版块的信息,最后回复,最后更新时间 if($author!="Guest"){
$sql="update member set no_of_post = no_of_post + 1 where username='$author'";
mysql_query($sql);
//更新发帖人的发帖数量
}
?>
编辑帖子,同样要求权限。必须登陆;用户必须是帖子的作者;管理员可以管理所有的帖子

<?php
if($_SESSION["groupID"]=="2"){
echo" <a href="editor.php?F=$F&T=$T&ID=$ID" class="forum">编辑</a>";
}elseif($_SESSION["username"] && $_SESSION["islogined"]){
if($_SESSION["username"]==$author) echo " <a href="editor.php?F=$F&T=$T&ID=$ID" class="forum">编辑</a>";
}
?>


点击放大

标签: