php/sql 新手。试图将 LIKE 名称搜索更改为精确搜索。即使使用我知道在表中的搜索值,也无法找到任何记录。
原始代码:
$sch = "SELECT record_key, surname, given_names, birth_date, death_date, age
FROM records
WHERE surname LIKE '".addslashes($name)."%';
$result = mysql_query($sch);
新代码:
$sch = "SELECT record_key, surname, given_names, birth_date, death_date, age
FROM records
WHERE surname = '".addslashes($name)."%';
$result = mysql_query($sch);
我已经尝试了我能想到的一切,包括:
WHERE surname = 'addslashes($name)';
(我不确定“每个结尾”或“%”的原因)
我可以让它工作的唯一方法是如果我废弃了addlashes并只使用: WHERE surname = '$name';
据我所知,这很容易被注射。