是否足以用双引号替换T-SQL语句中的所有单引号以防止注入?
我有这个PHP函数来转义用户输入,然后直接执行。
<?php
function clean($input) {
return str_replace('\'', '\'\'', $input);
}
echo 'INSERT INTO Temp ([test]) VALUES (\'' .clean($_GET['test']). '\')';
示例:$_GET['test']
是'test
,它将被转义到'''test'
。
我知道,我应该使用准备好的语句,但是我想知道这是否容易受到攻击。