非常に基本的な概念が欠けているように感じます。説明や参考資料を使用できます。
私の Web サイトでは、テキストを入力ボックスに入力し、それをデータベースに送信して保存するユーザーがいます。以下のコード ブロックの関数を使用して、そのテキストをデータベースに挿入します。 where $conn->exec(query)
is from Pg.pm .
$conn->exec("select someFunc($mykey,'text to insert');");
現在、これは機能しますが、SQL インジェクションに対して脆弱であるか、ユーザーがコンマを入力した場合でも壊れます。
DBD::Pgについて読みましたが、prepare
これに相当するものは見つかりませんでしたPg.pm
。私はそれを逃しましたか?
Pg.pm
をサポートしていない場合prepare
。prepare
このステートメントをサポートする perl モジュールを使用する必要がありますか? または、ユーザー入力フィールドを挿入/更新している SQL 関数を使用して、bobby -tablesで概説されているアプローチに従うこともできます。quote_ident()
quote_literal
ユーザー入力を安全に処理するにはどうすればよいですか?