settingsログイン
メニュー

【解決済み】SQLインジェクションを防ぐ最も簡単な方法は何ですか?

閲覧 604
SQLインジェクションを防ぐ最も簡単な方法は何ですか?言語はPHPです。よろしくお願いいたします
Oshige 2016 5/12 質問 PHP

回答 1

役立ち 0
 
ベストアンサー!

PDOを使用されるのがとても安全ですよ。SQLインジェクションをPDOを使用して防ぐコードの例を下記に示します

try{
  $dbh = new PDO("mysql:host=127.0.0.1;dbname=".$DBNAME.";charset=utf8", $USERNAME, $PASSWORD);
 

  $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
 
  $stmt = $dbh->prepare("select * from TABLENAME WHERE ID = ?");
  $stmt->setFetchMode(PDO::FETCH_ASSOC);
  
  $a = 1;
  $stmt->bindParam(1, $a, PDO::PARAM_INT);
  $stmt->execute();
 
  while ($row = $stmt->fetch()) {
    echo $row["ID"];
  }
 
  $dbh = null;
 
} catch(PDOException $e){
  echo $e->getMessage();
}

OCS Open Computer Service 東京都 中野区 システム構築・ソフトウェア開発

全ての回答 ホームページへ
2016 5/13 回答

プログラミング・開発言語、PHP の企業/事業者/教室/プロの方のホームページの集客、アクセスアップ、SEO対策効果が期待できるリスティングサイト=Ask-itをぜひご活用ください

Ask IT にようこそ。ここではコミュニティメンバーに質問したり、回答を得ることができます。
ITについて質問したい方へ ITについてプロに質問したい方は会員登録後すぐに質問をする事ができます。

プロフェッショナルの方へ 質問に答えていただけるプロフェッショナルの方は下記をご覧下さい

お気づきの点があれば是非お知らせください
...