1

使用时

$optionquery = "SELECT OptionId FROM Option_Table WHERE (OptionType = ?)";

// Bind parameter for statement
$optionstmt->bind_param("s", $selected_option);

这很好,但是如果我想使用 WHERE 子句在文件夹中查找变量,它应该如何编写?下面是这样的吗?

$optionquery = "SELECT OptionId FROM Option_Table WHERE (OptionType = 'VideoFiles/?')";

// Bind parameter for statement
$optionstmt->bind_param("s", $selected_option);

或像这样:

$optionquery = "SELECT OptionId FROM Option_Table WHERE (OptionType = ?)";

// Bind parameter for statement
$optionstmt->bind_param("s", 'VideoFiles/$selected_option');

单引号是围绕文件夹名称和变量名称还是围绕文件夹名称?

4

1 回答 1

3

你需要使用后者

$optionquery = "SELECT OptionId FROM Option_Table WHERE (OptionType = ?)";

有多种方法可以引用字符串,以下任何一种都可以:

$optionstmt->bind_param("s", 'VideoFiles/' . $selected_option);
// or
$optionstmt->bind_param("s", "VideoFiles/$selected_option");

但是,将变量放在单引号'中是行不通的。变量不会被翻译成它的实际值,$selected_option如果你使用单引号,你会在查询中得到文字字符串。

于 2012-06-18T17:17:44.637 回答