「PHPとデータベース - MySQL」の版間の差分

ナビゲーションに移動 検索に移動
57行目: 57行目:
     // データベースの接続を閉じる
     // データベースの接続を閉じる
     mysqli_close($link);
     mysqli_close($link);
?>
</syntaxhighlight>
<br>
また、MySQLへ接続するには、PDO拡張モジュールを使用することもできる。<br>
<u>PDO拡張モジュールは、PHP 5.1から使用できる。</u><br>
<br>
PHP Data Objects(PDO) は、データベースに接続するためのインターフェイスとして機能する拡張機能である。<br>
mysqliとは異なり、あらゆるデータベース機能を実行することができ、MySQLに限定されるものではない。<br>
データベース間の柔軟な連携を可能であり、mysqliよりも汎用的である。<br>
<br>
PDOは、サーバ側とクライアント側のプリペアドステートメントをサポートしている。<br>
<br>
以下の例では、PDO拡張モジュールを使用して、MySQLサーバへ接続している。<br>
<syntaxhighlight lang="php">
<?php
    $host    = "localhost";
    $username = "username";
    $passwd  = "password";
    $dbname  = "mydb";
    $charset  = "utf8mb4";
    try {
      $dsn = "mysql:host=$host; dbname=$dbname; charset=$charset";
      $pdo = new PDO($dsn, $username, $passwd);
      $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
      echo "Connection Okay";
      return $pdo
    }
    catch (PDOException $e)
    {
      echo "Connection failed: ". $e->getMessage();
    }
  ?>
  ?>
  </syntaxhighlight>
  </syntaxhighlight>

案内メニュー