我的论坛源代码(五)

okey.php主要处理用户登录和发布的信息处理

 1<html><head><title>发表文章</title>
 2<link href="js/cpcw.css" link="" rel="stylesheet"/>
 3<?   
 4include "linkfox.inc.php";   
 5include "info.inc.php";   
 6function postf($useinfo,$title,$message) //发帖信息处理   
 7{   
 8$query="select * from foxbbs order by id desc limit 1";   
 9$row=@mysql_query($query);   
10$info=@mysql_fetch_array($row);   
11if ($useinfo[2]==$info[1]&&$title==$info[3]) //检查最近一条信息是否和当前信息一样。   
12echo "<script language='JavaScript'> alert('请勿重复发帖,谢谢合作!'); ";   
13else{   
14$time=date(Y年n月j日G时i分);   
15$filename=date(YmjGis); //文件名取当前的时间   
16$gip=getenv("REMOTE_ADDR"); //写入信息   
17$query="insert into foxbbs (usename,ftbq,title,ftdate,mesname,djnum,hfnum,ip) values ('".$useinfo[0]."','".$useinfo[14]."','".$title."','".$time."','".$filename."',1,0,'".$gip."')";   
18$req=@mysql_query($query);   
19if ($req) { //如果写入成功,则给用户发帖数加一,建立内容文件   
20$query="select ftnum from useinfo where usename='".$useinfo[0]."'";   
21$req=@mysql_query($query);   
22$ftnum=@mysql_fetch_array($req);   
23$ftnum=$ftnum[0]+1;   
24$query="update useinfo set ftnum='$ftnum' where usename='".$useinfo[0]."'";   
25$req=@mysql_query($query);   
26$ft=$filename;   
27$fp=fopen($ft,"w"); //把所有的"&lt;","&gt;"符号转换成"&lt;","&amp;rt"可以去除HTML标记,好像有个函数可以直接去除,但我记不到了,也没在参考手册里查到,所以用个笨法子了。   
28$message=str_replace("&lt;","&lt;",str_replace("&gt;","&gt;",$message));   
29$message=nl2br($message); //先去除符号再变换行,免得换行符也变成字符显示出来。   
30$f=fputs($fp,$message);   
31$fp=@fclose($fp);   
32echo "<script language="JavaScript"> alert('".$useinfo[2]."!恭喜你,发贴成功!'); </script>";   
33}   
34else {   
35echo "<script language="JavaScript"> alert('非常报歉,因数据库原因,你的帖子没能保存!'); </script>";   
36}   
37}   
38  
39}   
40function userr($username,$userpass,$title,$message) //用户信息校验函数   
41{   
42$query="select * from useinfo where usename='".$username."'";   
43$req=mysql_query($query);   
44$useinfo=mysql_fetch_array($req);   
45if ($useinfo[0]==$username)   
46{   
47//如果通过校检就调用信息处理函数   
48if ($userpass==$useinfo[1]) {postf($useinfo,$title,$message);return $useinfo;}   
49else {   
50echo "<script language="JavaScript"> alert('密码不正确,请检查!'); </script>";   
51echo "<meta content="2;URL=post.php" http-equiv="REFRESH"/>";   
52}   
53}   
54else   
55{   
56echo "<script language="JavaScript"> alert('用户不存在,请确认已注册!'); </script>";   
57}   
58}   
59?&gt;   
60<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
61<meta content="2;URL=foxbbs.php" http-equiv="REFRESH"/>
62</head><body topmargin="0">
63<?   
64$tem=$HTTP_COOKIE_VARS[FlyFoxNet];   
65$temp=explode("|",$tem);   
66$cookiem=$temp[0];   
67$useinfo=cuser($cookiem,$action);   
68if (isset($message))   
69{   
70if($username)   
71{   
72$useinfo=userr($username,$userpass,$title,$message);   
73}   
74else if($useinfo) {   
75userr($useinfo[0],$useinfo[1],$title,$message);   
76}   
77else {echo "<script language='JavaScript'> alert('你不是合法用户,不能在此论坛发帖!'); ";}   
78  
79}   
80if ($d==q)   
81{   
82echo "<script language="JavaScript"> alert('你已退出登录状态,将以游客身份返回论坛'); </script>";   
83}   
84?&gt;   
85<br/><br/><br/><br/><br/>
86<div align="center"><a href="foxbbs.php">如果系统未自动返回页面,请点击这里反回.</a></div>
87</body>
88</html>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus