PHP变量中的字母出现问题

时间:2018-10-24 12:44:43

标签: php mysql variables mysqli var

我有一个如下的sql查询

$sql = "SELECT * FROM discounts WHERE sh_id=$member_id AND discount_code=$discount_code";

$discount_code = "test1";我没有结果

无论何时$discount_code = 1;我得到结果。

然后有趣的是,如果我赚$discount_code = "1";,我也会得到结果

请注意,我的数据库中有两行相同,唯一的变化是Discount_code列,其中第一行为test1,另一行为1

我在这里缺少一个令人眼花obvious乱的明显东西吗? discount_code的列类型为varchar(255)

谢谢

1 个答案:

答案 0 :(得分:2)

$discount_code的行为类似于整数,1"1"时,在SQL中保持原样即可。但是,如果是字符串,则需要用引号引起来。

用引号引起来的整数也可以。

$sql = "SELECT * FROM discounts WHERE sh_id=$member_id AND discount_code='$discount_code'";