PHP+txt聊天室

PHP+txt聊天室

最近朋友发了一篇ASP+txt聊天室,非常不爽,我可是支持PHP的啊
所以就发了这篇文章
由于是临时写的,所以可能会有问题,如果发现请指出

环境配置

PHP版本: PHP7
服务器: 推荐Apache24,其他的也没有影响
系统: Windows或Linux都可以
目录: 在你的服务器任意目录就可以在目录下要有几个文件:index.phpchat.csschat.js//前端,以后会讲enter.php//进入聊天通道,前端background.php//后端chats (文件夹)//用于存放聊天记录chats_info.txt//在进入聊天时会用到//如果在检查聊天密码时想偷懒,就将聊天密码信息放在这/*格式:聊天名称  (换行)聊天密码*/

登录聊天

/*首先要有一个enter.php,这是用户进入聊天室的通道
这个页面可以放在后端
这个页面用于检查用户密码是否正确,聊天密码是否正确等
这个页面要创建几个COOKIE:
username: 用户名(这个在登录时就可以创建)
password: 用户密码(在登录时就可以创建)
chat_name: 聊天名称
chat_password: 聊天密码*///以下是示例代码$username=$_POST["username"];
/*获取用户名
如果在登录时使用COOKIE则用
$username=$_COOKIE["username"];
用GET方式请求则相应变化*/
$password=$_POST["password"];
$chat_name=$_POST["chat_name"];
$chat_password=$_POST["chat_password"];function check_password($password, $username)
{/*连接数据库检查用户密码是否存在最后返回OK或密码不正确等提示*/return "OK";//如果不想判断就直接返回OK
}
function check_chat_exists($chat_name)
{//检查聊天是否存在//这里通过检查存放聊天记录的文件是否存在来检查if(file_exists("chats/" . $chat_name . ".txt")){return "OK";}else{return "Error: Can not find the chat";}
}
function check_chat_password($chat_name, $chat_password)
{/*连接数据库检查聊天密码如果你使用txt来检查密码,那么可以使用以下代码*/$f=fopen("chats_info.txt", "r");$line="";//存储读取到的信息$line_num=1;//行数$r="Can not find your chat";//返回值while(!feof($f))//逐行读取{$line=fgets($f);if($line_num%2==0){//通过单复数来判断读取到的是聊天名称还是密码if($line==$chat_name)//聊天名称是否相符{//检查密码if(fgets($f)==$chat_password){$r="OK";break;}else{$r="Your password is not correct";break;}}}$line_num=$line_num+1;}fclose($f);return $r;
}
$back=check_password($password, $username);
if($back=="OK")
{$back=