PHP+HTML开发发帖功能点击发布后帖子不显示问题求助
问题排查与修复方案
问题1:帖子容器被强制隐藏
你的样式表中.thepost类设置了display: none属性,整个帖子列表容器默认不可见,是最直接的显示异常原因。
修复方式:直接删除该属性,或修改为display: block。问题2:全部帖子定位重叠
你给帖子内所有元素都加了position: fixed固定定位,所有帖子的元素都会堆叠在屏幕同一坐标位置,就算有多个帖子也只能看到最后渲染的一条。
修复方式:移除所有帖子相关元素的position: fixed属性,改用常规文档流布局,可适当用margin控制间距即可。问题3:作者名取值错误
循环输出帖子时,你直接调用了插入逻辑中定义的$firstname、$lastname变量,没有从查询到的单条帖子数据$row中取值,要么会触发变量未定义报错,要么所有帖子都显示当前登录用户的名称,不会匹配对应帖子的作者信息。
修复方式:将作者名输出代码替换为
<?php echo $row['firstname'] . " " . $row['lastname'] ?>
- 问题4:提交后未更新页面数据
如果你的发帖请求是用AJAX异步提交的,服务端插入数据后前端没有主动拉取最新的帖子列表,也会导致新帖不显示;如果是普通表单提交,建议插入成功后加重定向逻辑,避免表单重复提交。
修复方式:在PHP插入逻辑的mysqli_stmt_execute($stmt)后添加重定向代码:
header('Location: ' . $_SERVER['PHP_SELF']); exit;
额外排查点:可以临时在插入逻辑的错误分支输出数据库报错信息,确认数据是否真的成功写入数据库:
将if (!mysqli_stmt_prepare($stmt, $sql)) { echo ""; }修改为
if (!mysqli_stmt_prepare($stmt, $sql)) { echo mysqli_error($connection); }
内容的提问来源于stack exchange,提问作者user17284394
相关产品推荐
相关产品推荐

