1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php
/* -----------------------------------------------------------------------------------------------
 *  MySQLi CRUDclassのAPI接続:MySQLiオブジェクト指向接続:「レコードの変更」の実行
 *                          とsuper classメソッドの混在した利用例
 *  2016.07.01 作成 yoshi of CXMedia Inc.
 * -----------------------------------------------------------------------------------------------
 */
// MySQLiクラスを拡張(extends)したclassのロード
require_once "php_class/MySQLi_eCRUD.class.php";

// MySQLデータベース接続の初期設定
$db_define = array(
    
'DBhost'  => 'localhost',    //接続サーバ(URL)
    
'DBuser'  => 'user',         //DB接続のユーザ名
    
'DBpwd'   => 'eLerning_PWD'//DB接続のパスワード
    
'DBname'  => 'list_db',      //接続データベース名
    
'DBtblm'  => 'persons',      //テーブル名
);
// MySQLi接続のインスタンス生成
$db = new MySQLi_eCRUD($db_define);

// MySQL接続の成功メッセージ表示
echo "■MySQLi CRUD:「{$db->DBname}」のデータベース接続(レコードの変更)!",'<br>';

/* ---------------------------------------------------------------
 *     「レコードの変更」のUpdate()の実行
 * --------------------------------------------------------------- */
// レコード変更のデータ
$inpData = array(
    
'seq_num'   => '5',
    
'name'     => '鈴木じゅん',
    
'email'     => 'jun_chan@ggg.co.jp',
);
// レコード変更のメソッド(プライマリーキーが「seq_num」であるので省略)
if(!$db->Update($inpData,'','edit') ){
    echo 
$db->DBerror,'<br>';
} else {
    
// 成功したSQL文の表示
    
echo 'レコード変更の成功!→「',$db->DBsql,'」<br>';
}

// バインドパラメータの配列
$ary  = array(
    
'pref_code' => 'KGW2',
    
'city_code' => 'K001'
);
// sqlのプリペアドステートメントの作成
$sql  "SELECT * FROM ".$db->DBtblm." WHERE pref_code=? && city_code=?";
// バインド変数に格納の配列
$outary = array(
    
'seq_num'=> '',
    
'name'   => '',
    
'birth'  => '',
    
'email'  => '',
);

// 継承の検索準備・バインド・実行・保存メソッド:「PrepareExecStore()」の実行
if( $db->PrepareExecStore($sql,$ary,$outary) ){
    
// 継承のプリペアドステートメントから結果取得してバインド変数に格納メソッド:「FetchStmt()」
    
while( $db->FetchStmt() ){
        
// 結果を表示
        
printf("IDは、%s→%s 県の %s 市にいる人の名前は、 %sでメールは、%s です。<br>"
            
$outary['seq_num'],$ary['pref_code'],$ary['city_code'],$outary['name'],$outary['email']);
    }
} else {
    
// エラープロパティ:「DBerror」「DBsql」の表示
    
echo 'PrepareExecStore ERROR',$db->DBerror,'→【 SQL 】:',$db->DBsql,'<br>';
}

// 継承のDBクローズメソッド:「Close()」の実行
$db->Close();

?>