了解PHP准备语句

时间:2011-08-21 21:09:55

标签: php mysqli prepared-statement

我有一个网站,用户刚刚登录并将其重定向到用户信息中心。我在一个SESSION中有user_id所以我可以使用它来进行SELECT查询以获取有关用户的其他信息。

我的问题是,如何在不使用foreach语句或while语句的情况下使用Prepared Statments来获取该页面所需的变量。它只适用于登录的特定用户,而不是为多个用户显示信息。

我查看的每个例子都是这样的:

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if ($stmt = $mysqli->prepare($query)) {

/* execute statement */
$stmt->execute();

/* bind result variables */
$stmt->bind_result($name, $code);

/* fetch values */
while ($stmt->fetch()) {
    printf ("%s (%s)\n", $name, $code);
}

/* close statement */
$stmt->close();
}

/* close connection */
$mysqli->close();

是否必须在while语句中?我只需要在顶部的变量,所以我可以显示我的常规页面,然后在需要时使用变量。那有意义吗?

只是想了解更多,并更好地了解其工作原理。

1 个答案:

答案 0 :(得分:1)

如果您只需要最高记录:

/* fetch values */
$stmt->fetch();
printf ("%s (%s)\n", $name, $code);

$stmt->fetch将获取第一行,除非您想继续遍历所有行,否则不需要while