Nej, förberedda frågor (när de används på rätt sätt) säkerställer att data escapes på rätt sätt för säker sökning. Du använder dem på rätt sätt, behöver bara ändra en liten sak. Eftersom du använder "?" platshållare är det bättre att skicka params genom exekveringsmetoden.
$sql->execute(array($consulta));
Var bara försiktig om du matar ut det till din sida, databassanering betyder inte att den kommer att vara säker för visning i HTML, så kör htmlspecialchars() på den också.