46928


下記コードを書いたphp.pdoというファイルを作り、localhost/php.pdoでアクセスすると「接続しました」とだけ表示されます。phpmyadminのデータベース‘personal’のテーブル‘friend’にデータを挿入したいのですが、
**DBにレコードが追加されたか確認する手段はありますか？** ご回答のほど宜しくお願います。

[code]

    <?php
        define('DB_HOST', 'localhost');
        define('DB_USER', 'root');
        define('DB_PASSWORD', 'root');
        define('DB_NAME', 'personal');
    
        // エラー表示設定:通知系以外全て表示    
        error_reporting(E_ALL & ~E_NOTICE);
    
        try {
    
            $dbh = new PDO('mysql:'.DB_NAME.';'.DB_HOST, DB_USER, DB_PASSWORD);
    
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            print('接続しました。');
    
              //SQL文を作る(新規レコード追加)
          $db -> exec("insert into friend (name, price, place) 
                                            values ('フライドチキン',100,'渋谷')");
    
             //プリペアドステートメントを作る
           $stm = $dbh->prepare($sql);
           //SQL文を実行
           $stm->execute();
    
              }
        catch(PDOException $e){
            print('ERROR:'.$e->getMessage());
            exit;
        } ?>
    
[/code]


CC BY-SA 4.0
2018-07-24T08:07:31.560
46902
2018-07-25T03:02:27.187
29244
question
php mysql phpmyadmin
DBにレコードが追加されたか確認する手段はありますか？(PDO,MySql)


> DBにレコードが追加されたか確認する手段はありますか？

insert文の実行結果は、 `'$dbh -> exec'`の返り値(失敗: FALSE を返します。)を見て追加されたか判断するすると良いでしょう。  
以下 単純な動作サンプルです。

[code]

    $dbh = new PDO('mysql:host=localhost;dbname=personal', 'root', 'root');
    $ret = $dbh -> exec("insert into friend (name, price, place) values ('フライドチキン',100,'渋谷')");
    
[/code]


CC BY-SA 4.0
2018-07-25T02:37:56.467
46928
2018-07-25T03:02:27.187
2018-07-25T03:02:27.187
22793
22793
46902
answer