Pues yo ejecuto mis procedimientos almacenado con clases.... pero aun asi yo uso sentencias sql como parametro osea: $clase->ejecutarProc($sql);
Pero en la misma sentencia sql siempre pongo el :
mysql_real_escape_string($id) en caso pongo una variable por ahi... pero no se si sera completamente segura... saludos