行うこと
1. データベースを作成
2. テーブルを作成
3. データを作成
4. データをインポート
5. phpプログラムを作成
6. phpプログラムの動作確認
前提
・データベース名:dbtest
・テーブル名:m_user
・テーブル項目:id, name, address
・phpプログラム:var_dumpを使ってテーブルの内容をブラウザに表示
1. データベースを作成
phpMyAdminを起動
「ホーム」アイコンをクリック
「SQL」タブクリック
以下を入力
CREATE DATABASE dbtest
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;
「実行」をクリック
「dbtest」ができて、「返り値が空でした」が表示されればOK
2. テーブルを作成
テーブルの確認(作成前)
「dbtest」をクリック
まだ、テーブルがないので「このデータベースにはテーブルがありません」と表示
テーブルの作成
「dbtest」をクリック
「SQL」タブをクリック
以下を入力
create table m_user
(
id int(8) not null primary key auto_increment
, name varchar(255)
, address varchar(255)
, unique(id)
, index(id)
)
character set utf8;
「実行」をクリック
「m_user」ができて、「返り値が空でした」が表示されればOK
テーブルの確認(作成後)
表示(データ)の確認
「表示」タブをクリック
まだ、データがないので「返り値が空でした」と表示
「id」、「name」、「address」の下に何も表示されない
構造の確認
「構造」タブをクリック
テーブルの構造を確認
3. データを作成
Excelでデータを作成
Excelで以下のデータを作成
ID | 氏名 | 住所 |
---|---|---|
1 | 東京 太郎 | 東京都新宿区 |
2 | 大阪 二郎 | 大阪府大阪市 |
3 | 名古屋 三郎 | 愛知県名古屋市 |
ファイル名:「m_user.xlsx」(Excel形式)で保存
csv形式で保存
「名前を付けて保存」で「CSV UTF-8(コンマ区切り)(*.csv)」で保存
4. データをインポート
「インポート」タブをクリック
「ファイルを選択」をクリック
「m_user.csv」をクリック
「開く」をクリック
ファイルの文字セット:「utf-8」を選択
Skip this number of queries (for SQL) starting from first one:「1」を入力
フォーマット:「CSV」を選択
「実行」をクリック
「インポートは正常に終了しました」と表示されればOK
インポートしたデータの確認
「表示」タブをクリック
インポートしたデータが表示
5. phpプログラムを作成
テキストエディタで以下を入力し、ファイル名「var_dump.php」で保存
「rootパスワード」はMySQLに設定したrootパスワード
<?php
define('DB_DATABASE', 'dbtest');
define('DB_USERNAME', 'root');
define('DB_PASSSWORD', 'roorパスワード');
define('PDO_DSN', 'mysql:dbhost=localhost;dbname=' . DB_DATABASE);
try {
//connect
$db = new PDO(PDO_DSN, DB_USERNAME, DB_PASSSWORD);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $db->query("SELECT * FROM m_user");
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($users as $user) {
var_dump($user);
}
echo $stmt->rowCount() . "records found ";
} catch (PDOException $e) {
echo "catch";
exit;
}
6. phpプログラムの動作確認
保存した「var_dump.php」を「(XAMPPをインストールしたディレクトリ)¥htdocs」にコピー
例では、「C:¥xampp¥htdocs」
XAMPPを起動し、「Apache」と「MySQL」を起動
ブラウザで「localhost/var_dump.php」を開く
テーブルの内容が表示されれはOK
以上