我有一个sqlquery,它是:client.query("SELECT * FROM my_table WHERE my_varchar='userInput'")
。
userInput = req.body.userInput
从jade文件中的输入框中读取。
无论我在变量周围尝试不同的''
或""
,我都会得到它从每个输入生成错误或每个输入看起来都是正确的,尽管表中不存在该输入。
任何帮助将不胜感激!
答案 0 :(得分:3)
正常答案是不要那样做!插入原始用户输入是被黑客入侵的好方法。你真的有输入值吗?
代替:
console.log("User Input is "+ userInput); // or add debug lib and debug("User Input....
client.query("SELECT * FROM my_table WHERE my_varchar = $1", [userInput]);
还可以从命令提示符
在psql中验证您的查询