Php 如何在SQL查询中获取特定ID

Php 如何在SQL查询中获取特定ID,php,sql,Php,Sql,我试图回显特定用户信息的内容。我目前正在使用 $sql = "SELECT treatment_log.tech,treatment_log.comments FROM customers LEFT OUTER JOIN treatment_log ON customers.id=treatment_fk WHERE customers.id = 12"; 数字12只会回显ID为12的患者的内容。我如何能够回应任何用户信息的内容。换言之,我还想分别回应用户13、14、15等的内容。我必须在“1

我试图回显特定用户信息的内容。我目前正在使用

$sql = "SELECT treatment_log.tech,treatment_log.comments FROM customers LEFT OUTER JOIN treatment_log ON customers.id=treatment_fk WHERE customers.id = 12";
数字12只会回显ID为12的患者的内容。我如何能够回应任何用户信息的内容。换言之,我还想分别回应用户13、14、15等的内容。我必须在“12”的位置放置什么才能“获取”当前正在查看的用户的id

目前,我可以使用PHP通过键入以下内容来完成此操作:

$_GET['customer_id']

首先,将
customer\u id
保存在变量中。请记住,
GET
不应与任何敏感数据一起使用。然而,正如你所要求的,也许你知道这一点。按如下方式操作:

$cid = $_GET['customer_id'];
$resultCheck = mysqli_num_rows($result);
if($resultCheck > 0) {
    while($row = mysqli_fetch_assoc($result)) {
        echo "id: ". $row["tech"]. " " . $row["time"]." " . $row["date"]." " . $row["titration_parameter"]." " . $row["bdi"]." " . $row["suicidality"]." " . $row["comments"]. "<br>";
    }
}
else {
    echo "0 results";
}
然后使用
符号代替
12
,编写如下sql查询:

$sql = "SELECT treatment_log.tech,treatment_log.time,treatment_log.date,treatment_log.titration_parameter,treatment_log.pain,treatment_log.bdi,treatment_log.suicidality,treatment_log.comments FROM customers LEFT OUTER JOIN treatment_log ON customers.id=treatment_fk WHERE customers.id = ?";
然后按以下步骤操作:

$stmt = mysqli_stmt_init($conn);
mysqli_stmt_prepare($stmt, $sql);
mysqli_stmt_bind_param($stmt, "s", $cid);
mysqli_stmt_execute($stmt);
$result = mysqli_stmt_get_result($stmt);
要了解以上每一行,请阅读官方手册 对于

最后,要获得结果,请使用以下方法:

$cid = $_GET['customer_id'];
$resultCheck = mysqli_num_rows($result);
if($resultCheck > 0) {
    while($row = mysqli_fetch_assoc($result)) {
        echo "id: ". $row["tech"]. " " . $row["time"]." " . $row["date"]." " . $row["titration_parameter"]." " . $row["bdi"]." " . $row["suicidality"]." " . $row["comments"]. "<br>";
    }
}
else {
    echo "0 results";
}
$resultCheck=mysqli\u num\u行($result);
如果($resultCheck>0){
while($row=mysqli\u fetch\u assoc($result)){
echo“id:.$row[“tech”]。$row[“time”]。$row[“date”]。$row[“滴定参数”]。$row[“bdi”]。$row[“自杀”]。$row[“评论”]。
; } } 否则{ 回显“0结果”; }
您是如何运行sql的?我不确定是否理解您的问题,但我刚刚发布了我的代码。希望这能澄清。
在(12,13,14)
中的customers.id将返回那些3im尝试将12转换为变量,而不是仅回显12,13,14。我想根据查看页面的用户操作SQL。请参见下文,我不理解这个问题。评论不用于扩展讨论;这段对话已经结束。