会話を始めるためのいくつかの可能性を次に示します。
- 初期化時にすべての入力をエスケープします。
- できれば SQL を生成するときに、各値をエスケープします。
最初の解決策は最適ではありません。Web ページに出力するなど、SQL 以外で使用する場合は、各値をエスケープ解除する必要があるためです。
2 番目の解決策はより理にかなっていますが、各値を手動でエスケープするのは面倒です。
プリペアド ステートメントは知っていますが、MySQLiは面倒です。また、クエリを入力から分離することも気になります。順序を正しくすることは重要ですが、間違いを犯しやすく、間違ったデータを間違ったフィールドに書き込んでしまうからです。