Como você evita a injeção de SQL em aplicativos LAMP?

Aqui estão algumas possibilidades para iniciar a conversa:

Escape toda a entrada na inicialização.Escape cada valor, de preferência ao gerar o SQL.

A primeira solução é abaixo do ideal, pois você precisará remover cada valor se quiser usá-lo em algo que não seja o SQL, como em uma página da web.

A segunda solução faz muito mais sentido, mas escapar manualmente de cada valor é uma dor.

Estou ciente dedeclarações preparadas, no entanto, achoMySQLi pesado. Além disso, a separação da consulta das entradas me preocupa, porque, embora seja crucial obter a ordem correta, é fácil cometer um erro e, assim, gravar os dados errados nos campos errados.

questionAnswers(5)

yourAnswerToTheQuestion