php - 模态弹出窗口不出现
问题描述
我想做一个弹出窗口来从数据库中搜索员工。
仅当我没有输入“while ($row = $sql->fetch(PDO::FETCH_ASSOC))”时才会显示弹出窗口。我在没有弹出窗口的情况下在不同页面上尝试了相同的代码。它的工作。当我尝试使用弹出窗口的代码时,它不起作用。
<!--Button to open the modal -->
<button class="myBtnSea" id="myBtnSea" data-toggle="modal" data-target="#myModalSea"><i class="fa fa-search"></i></button>
<!-- The Modal -->
<div id="myModalSea" class="modalSea">
<!-- Modal content -->
<div class="modalSea-content">
<span class="closeSea">×</span>
<div id="SearchStaff">
<h3>Search for Staff</h3>
<form action="search.php" method="POST">
<div class="container">
<p>You can search either by name or IC number.</p>
<hr>
<input type="text" name="nama" placeholder="Search By Name" style="text-transform:uppercase"> <br><br>
<input type="text" name="icnum" placeholder="Search By IC Number" >
<button class="btn" name="search">Search</button><br><br>
<!--Table for display the data after search -->
<table id="table">
<tr>
<th>Name</th>
<th>Department</th>
<th>Campus</th>
</tr>
<!--This code makes the popup does not appear -->
<?php while ($row = $sql->fetchAll(PDO::FETCH_ASSOC)) { ?>
<tr>
<td><?php echo $row['name']?></td>
<td><?php echo $row['dept']?></td>
<td><?php echo $row['campus']?></td>
</tr>
<?php } ?>
</table>
</div>
</form>
</div>
</div>
</div>
解决方案
在这里循环时出现语法错误$sql>fetch(PDO::FETCH_ASSOC)
,应该是这样$sql->fetchAll
的使用 PDO 获取所有记录的正确语法是
while ($row = $sql->fetchAll(PDO::FETCH_ASSOC))
您可以查看有关PDOStatement::fetch的更多信息
更新:
看来您没有在按钮中设置 data-target 和 data-toggle
<button class="myBtnSea" id="myBtnSea" data-toggle="modal" data-target="#myModalSea"><i class="fa fa-search"></i></button>
推荐阅读
- asp.net - 哪个用户在aspx文件所在的服务器上运行cmd
- c# - C# DataAnnotations 正则表达式不正确匹配
- java - NDK 解析结果:项目设置:Gradle 模型版本=5.1.1,NDK 版本为 UNKNOWN
- html - 在具有不同数字的新 div 上应用 css 类
- c# - 在运行时访问对象数组 - System.NullReferenceException
- java - 黄瓜 AmbiguousStepDefinitionsException
- html - 我的代码中有可在 FF 中使用但在 Chrome 中不可用的锚点
- excel - Excel:如果另一列有重复,则只计算一次
- regex - 使用 re.sub 清理嵌套列表
- charts - 如何以编程方式将 Google 表格中的图表作为图像获取