SELECT prepare语句中的变量

时间:2017-04-03 18:34:28

标签: php mysql prepare

我正在尝试在SQL查询中使用prepare语句,但是当select中有变量时我遇到了麻烦。

这不能正常工作:

$variable = "username";
$userId = "157";

$stmt = $conn->prepare("SELECT ?
                        FROM myTable
                        WHERE id=?");
$stmt->bind_param("ss", $variable, $userId);
$stmt->execute();
$stmt->bind_result($result);
$stmt->fetch();
printf("ID: %s and %s is: %s\n", $userId, $variable, $result);

打印“ID:157,用户名为:用户名”时应打印“ID:157,用户名为:john90”

我猜测问题是我在查询的SELECT部分​​使用变量,但我无法删除此变量,因为有时我需要不同的内容,而不仅仅是用户名。 (有时变量可能是电子邮件或年龄等)。

任何建议表示赞赏。

0 个答案:

没有答案