sprintf няма да ви защити! Той само замества %s
трябва да mysql_real_escape_string така:
$sql = sprintf('SELECT * FROM TABLE WHERE COL1 = "%s" AND COL2 = "%s"',
mysql_real_escape_string($col1),
mysql_real_escape_string($col2));
е по-безопасно инжектиране
забележка:Предлагам ви да разгледате PDO , това е, което обичам да използвам за DB връзки и заявки