当我使用WHERE equals Clause从表中搜索结果时,我希望得到与众不同的结果。例如,当我寻找结果而我的查询是
SELECT * FROM users WHERE login="lapis"结果与结果相同
SELECT * FROM users WHERE login="lapis "。最后的空格被忽略,这是我的代码中的问题,因为我将这个查询用于我的php登录脚本,任何人都可以使用正确的密码登录帐户,但是从技术上讲,没有正确的登录名(应该是“ lapis”,而不是“ lapis”) 。有什么我可以做的吗?

最佳答案

您的问题不是很详细,但是从我可以收集到的内容来看,一个简单的preg_replace()可以满足您的要求。

例如,

$login = preg_replace('/\s+/', '', 'lapis '); // This will output: lapis

$conn->query("SELECT * FROM users WHERE login='".$login."'")


用我包括的字符preg_replace将删除所有空格,包括制表符和其他形式。

关于php - 等于SQL忽略空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59860057/

10-10 13:54