4
我正在编写一个C应用程序,它需要一些用户输入并执行一些数据库查询。我很清楚SQL注入的风险,并希望阻止它。阻止SQL注入C
理想情况下,我会使用参数化查询,但到目前为止还无法在C中使用此功能找到任何东西。我目前正在构建我的查询,因此:
char *query;
asprintf(&query, "UPDATE SomeTable SET SomeField='%s';", userInput);
如果我无法做到这一点,那么我必须过滤用户输入。该过滤应该如何完成?是否足以删除所有的和s?(有效的输入不能包含它们)如果是这样,在C中做这个最简单的方法是什么?
谢谢,这就是我想要做的,我只是无法找到一种使用C库的方式 – DanielGibbs 2011-04-29 03:02:53
你需要使用[mysql_stmt_bind_param()](http://dev.mysql.com/doc/refman/5.6/en/mysql-stmt-bind-param.html) – 2011-04-29 03:06:26