
Sponsored Link
php 関数テンプレート
MySQLに接続する
function connect() { $dsn = 'mysql:dbname=DB_NAME;host=HOST_NAME;charset=utf8'; $user = 'USER_NAME'; $pw = 'PASS'; $driver_options = array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_EMULATE_PREPARES => false, ); try { // データベースに接続 $pdo = new PDO( $dsn, $user, $pw, $driver_options ); $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); return $pdo; } catch(PDOException $e) { return $error = $e->getMessage(); } }
- 2行目dbnameはデータベース名、hostはホスト名(サーバ)※ローカル環境であれば、localhost
- 3行目userはユーザ名※デフォルトであれば、root
- 4行目pwはパスワード
指定のテーブルの中身を全て抽出する
function get_all_table() { try { $pdo = connect(); $sql = 'SELECT * FROM `テーブル名` ORDER BY `テーブル名`.`フィールド名` asc'; $stml = $pdo->prepare($sql); $stml->execute(array()); $stml = $stml->fetchAll(); } catch(PDOException $CMS_PDO_SQL_ERR) { $CMS_PDO_SQL_ERR->getMessage(); } return $stml; }
指定のテーブルの中身を絞り込んで抽出する
function get_select_table() { try { $pdo = connect(); $sql = 'SELECT * FROM `テーブル名` WHERE `フィールド名`=:field_name'; $stml = $pdo->prepare($sql); $stml->execute(array(':field_name'=>'取得値')); $stml = $stml->fetch(); return $stml; } catch(PDOException $CMS_PDO_SQL_ERR) { $CMS_PDO_SQL_ERR->getMessage(); } }
- 一つのデータのみを取得する場合は、$SQLを‘SELECT * FROM
テーブル名
WHEREフィールド名
=? LIMIT 1′としてもいい。 - LIMITは抽出数を指定するSQL文。
書式は LIMIT [開始位置,]取得数
開始位置の記載は任意で、デフォ値は0
LIMIT 3 としたなら、抽出したレコードの中で、上から3つを取得する。
LIMIT 1,3としたなら、抽出したレコードの中で、上から2つ目から3つを取得する。
カンマ区切りで、LIMIT 取得開始位置,取得数 となる。
※取得開始位置は、0始まりの為注意。
指定のテーブルの中身を削除する
function delete_table() { try { $pdo = connect(); $sql = 'DELETE FROM `テーブル名` WHERE `フィールド名`=:field_name'; $stml = $pdo->prepare($sql); $stml->execute(array(':field_name'=>'削除する値')); } catch(PDOException $CMS_PDO_SQL_ERR) { $CMS_PDO_SQL_ERR->getMessage(); } }
指定のテーブルの中身を変更(更新)する
function update_table() { try { $pdo = connect(); $sql = 'UPDATE `テーブル名` SET `フィールド名`=:change_name WHERE `フィールド名`=:field_name'; $stml = $pdo->prepare($sql); $stml->execute(array(':change_name'=>'変更後の値','field_name'=>'フィールド名の値')); } catch(PDOException $CMS_PDO_SQL_ERR) { $CMS_PDO_SQL_ERR->getMessage(); } }