我已经把自己弄得乱七八糟。但
我正在尝试执行类似查询的查询
$myQuery = 'SELECT col1 , col2 from my_table WHERE col_value LIKE '%$my_string_variable%';
但是这个查询显然会出错。这个的正确语法是什么?我试过弄乱双引号,但这也不起作用。
答案 0 :(得分:5)
结合双引号和单引号。
$myQuery = "SELECT col1 , col2
FROM my_table
WHERE col_value LIKE '%$my_string_variable%'";
虽然我更喜欢保护我的代码免受SQL注入..
$myQuery = "SELECT col1 , col2
FROM my_table
WHERE col_value LIKE '%" . mysql_real_escape_string($my_string_variable) . "%'";
答案 1 :(得分:4)
用双引号括起整个事物。
$query = "SELECT col1 , col2 from my_table WHERE col_value LIKE '%$my_string_variable%'";
答案 2 :(得分:1)
您在单引号分隔字符串中使用单引号。尝试使用双引号引用你的字符串。
答案 3 :(得分:1)
$myQuery = "SELECT col1 , col2 from my_table WHERE col_value LIKE '%$my_string_variable%'";
应该解决你的问题。
答案 4 :(得分:1)
您使用单引号作为字符串的开头,然后再单引号引用它。您可以将其更改为以下内容:
$myQuery = "SELECT col1 , col2 from my_table WHERE col_value LIKE '%$my_string_variable%'";
答案 5 :(得分:0)
如果您不想打破查询模式,请查看此内容。
$myQuery = 'SELECT col1 , col2 from my_table WHERE col_value LIKE "%' .$my_string_variable . '%"';
当您应用单引号时,不要在其中包含php变量,因为此单引号将其中的所有内容视为值不可变。