gpt4 book ai didi

mysql - 当where子句中有两个过滤器时显示数据pdo mysql

转载 作者:行者123 更新时间:2023-11-29 13:49:15 24 4
gpt4 key购买 nike

我需要过滤日期(curdate)和医生的ID以查看每个医生的日期(每个医生只需要查看他/她每天的唯一日期..

如果我不将此 ,id_doctor = GET['id_doctor'] 放在 where 子句中,我的代码就可以工作

    <table class="table table-striped table-bordered bootstrap-datatable datatable">
<thead>
<tr>
<th>Fecha</th>
<th>Hora</th>
<th>Nombre de Paciente</th>
<th>Acciones</th>
</tr>
</thead>
<tbody>
<? $sql = "SELECT * FROM CITAS WHERE f_cita = CURDATE(),id_doctor = GET['id_doctor'] ORDER BY f_cita, h_cita ASC";
$result = $conn->query($sql);
while($row = $result->fetch(PDO::FETCH_ASSOC)) {
?>
<tr>
<td><

? echo $row['f_cita'] ?></td>
<td><? echo $row['h_cita'] ?></td>
<td><? echo $row['nombrep'] ?></td>
<td><a class="btn btn-success" href=paciente_personal_profile.php?id_paciente=<? echo $row['id_paciente']; ?>>
<i class="icon-user icon-white"></i> Ver Perfil</a>
</td>
</tr><? } ?>
</tbody>
</table>

我在表 CITAS 中有这个 FK(id_paciente 和 id_doctor),但我需要当“x”id_doctor 登录系统时,他/她只能看到他/她的日期...

你能帮我解决这个问题吗?

最诚挚的问候!

最佳答案

这是因为它应该是 $_GET[] 而不是 GET[] 所以

GET['id_doctor'] 

应该是

$_GET['id_doctor']

并且您还需要将 where 子句与 AND 相关联

WHERE f_cita = CURDATE() AND id_doctor = ".$_GET['id_doctor']." ORDER BY f_cita, h_cita ASC";
--^you placed a comma here instead of AND

我还建议您,您的代码容易受到 mysql 注入(inject)的攻击,您应该阅读以下内容: How can I prevent SQL injection in PHP?

您应该使用准备好的声明以避免任何风险,了解更多here

这是来自 stackoverflow 的一个很好的示例 token

$id  = 1;
$stm = $pdo->prepare("SELECT name FROM table WHERE id=?");
$stm->execute(array($id));
$name = $stm->fetchColumn();

关于mysql - 当where子句中有两个过滤器时显示数据pdo mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16921602/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com