# bbs-php **Repository Path**: zpv/bbs-php ## Basic Information - **Project Name**: bbs-php - **Description**: php写的论坛项目 适合新手入门 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2021-07-03 - **Last Updated**: 2024-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # bbs论坛项目 因为重点放在了PHP编写上,所以前端部分没有特别写~~ 数据提交都是采用FORM表单的形式 #### 项目结构 /bbs/ ``` sh ├── config/ # 项目配置文件 ├── config.php # 配置文件 ├── core/ # 核心文件 ├── mysqlDB.php # 数据库连接文件 ├── upload.php # 上传文件操作 ├── model/ # 业务模块 ├── list_father.php ├── login.php ├── publish.php ├── publish_deal.php ├── register.php ├── reply.php ├── reply_deal.php ├── show.php ├── userInfo.php ├── validate.php ├── public/ # 静态资源存放目录 ├── uploads/  # 文件上传目录 ├── views/ # 视图目录 ├── index.html   ├── list_father.html ├── list_son.html ├── login.html ├── publish.html ├── quote.html ├── register.html ├── reply.html ├── show.html ├── index.php # 项目入口文件 ├── init.php # 项目初始化文件 ``` ### 项目介绍 * 项目进行了简单的前后端分离 * 功能实现:登录(结合session和cookie)、注册、注销、查看帖子、发表帖子、帖子分页、点赞、帖子回复、头像、删除帖子 ```php // index.php setTimeout( () => alert(''),500 )"; die(""); } } //用户表单数据过滤 /** * 封装跳转函数 * @param string $str 接收的表单数据 * @return string 返回数据 */ function escapeString($str) { return addslashes(strip_tags(trim($str))); } ?> ``` ```php query($sql); $row = $result->fetch_assoc(); // 还是一个数组 $rowCount = $row['sum']; // 得到总记录数 // 计算总页数 $pages = ceil($rowCount / $rowsPerPage); // 拼凑出页码字符串 $strPage = ''; // 拼凑出“首页” $strPage .= "首页"; // 拼凑出“上一页” $preNum = $pageNum == 1 ? 1 : $pageNum - 1; if($pageNum != 1) { $strPage .= "<<上一页"; } // 确定显示的第1个页码$startNum的值 if($pageNum <= 3) { $startNum = 1; }else { $startNum = $pageNum - 2; } // 确定$startNum的最大值 if($startNum > $pages - 4) { $startNum = $pages - 4; } // 防止$startNum出现负值 if($startNum <= 1) { $startNum = 1; } // 确定显示的最后1个页码$endNum的值 $endNum = $startNum + 4; // 防止$endNum越界 if($endNum > $pages) { $endNum = $pages; } // 拼凑出中间的页码 for($i=$startNum;$i<=$endNum;$i++) { if($i == $pageNum) { $strPage .= "$i"; }else { $strPage .= "$i"; } } // 拼凑出“下一页” $nextNum = $pageNum == $pages ? $pages : $pageNum + 1; if($pageNum != $pages) { $strPage .= "下一页>>"; } // 拼凑出“尾页” $strPage .= "尾页"; // 拼凑出“总页数” $strPage .= "总页数:$pages"; // 分页到此结束 // 3, 提取publish表的数据 $offset = ($pageNum - 1) * $rowsPerPage; $sql = "select * from publish order by pub_time desc limit $offset, $rowsPerPage"; $result = $conn->query($sql); if ( $result->num_rows == 0 ) { $row = array('pub_content' => '信息消失了~', 'pub_owner' => ''); } include DIR_VIEW . 'list_father.html'; //logout.php 账号注销功能 connect_error ) { die('数据库连接失败'); } ``` #### 项目总结 * 本项目是初学PHP写的第一个综合性项目,写的过程中遇到很多问题,发现PHP基础这一块很重要,其次就是后端方面要多去了解 * 写的大多都是纯业务的代码,代码质量有待提高 * 总结: 继续采坑(^-^)V * 项目适合入门的小伙伴哦~ ##### 始终坚信 敢于尝试的你 其实已经进步了 ^_^