添加PHP下拉菜单代码后Bootstrap页面加载不全后续内容不显示如何解决
问题排查与修复方案
问题根因
- 核心问题是你在下拉选项渲染逻辑末尾提前关闭了数据库连接:你调用了
$conn->close(),页面后续如果有任何需要用到数据库连接的逻辑(比如你引入的alert-form-submission.php内的数据库操作、后续其他业务查询),都会因为连接已关闭抛出致命错误,直接终止PHP脚本执行,表现就是页面加载到下拉菜单位置就停止。 - 次要风险点:输出
<option>标签时value属性没有加引号,如果$option['id']存在特殊字符会导致HTML结构断裂,也可能引发渲染异常。
修复代码
直接替换你的下拉部分代码即可:
<div class="form-group"> <label for="client">Client:</label> <select name="client" class="custom-select"> <option selected>Select Division or District</option> <?php $client = new Job(); $result = $client->getClient(); if ($result->num_rows > 0) { while($option = $result->fetch_assoc()) { // 给value属性加引号,避免HTML语法错误 echo "<option value='{$option['id']}'>{$option['name']}</option>"; } } // 移除提前关闭连接的代码,PHP会在脚本执行完毕后自动释放连接 ?> </select> </div>
可选排查方案
如果修改后问题仍然存在,可以在页面最顶部加入以下代码开启PHP错误显示,就能看到具体的报错信息定位问题:
<?php error_reporting(E_ALL); ini_set('display_errors', 1); ?>
内容的提问来源于stack exchange,提问作者vidyarathna
相关产品推荐
相关产品推荐

