2009/12/03

データベースを使うPHPプログラム (1)データベース(MySQL)の準備

XAMPPで作ったPHPの開発環境で、データベースを使うプログラムを作ります。



データベースについて


XMAPPにはMySQLというデータベースが含まれています。
まずは、MySQLのデータベースがどのようにデータを格納しているかを説明します。


データベースは複数の要素をテーブルと言う単位でひとまとめにして管理しています。
フィールドというのが実際にデータ1つ1つが登録されている場所です。




データベースの構造

MySQLデータベースサーバ
    |
     +-データベース
            |
            +テーブル
            |     |
            |     +-フィールド
            |     +-フィールド
            |
            +テーブル
                  |
                  +-フィールド
                  +-フィールド



抽象的すぎて分かりづらいので、ブログのデータを保存しているデータベースを例に同じような図にすると下のような感じです。
データの種類ごとにテーブルがあり、テーブル内のフィールドにデータが保存されているのがわかると思います。

ブログデータベース


データベースサーバ
    |
     +-ブログデータベース
            |
            +ブログ記事テーブル
            |     |
            |     +-記事タイトルフィールド
            |     +-記事内容フィールド
            |
            +ブログコメントテーブル
                  |
                  +-コメント投稿者名フィールド
                  +-コメント内容フィールド





今回は、下のようなデータベースからメッセージを取り出して表示するだけの単純なプログラムを作ってみます。


今回作るプログラム用のデータベース

MySQLサーバ
    |
     +-データベース
            |
            +メッセージテーブル
                  |
                  +-項目番号フィールド
                  +-表示メッセージフィールド






まずは表示するためのメッセージデータを、データベースに登録しなくてはいけないので、MySQLの管理ツールを使って、表示するメッセージが登録されたデータベースを作ります。


0.管理ツールを起動

XAMPP管理パネルを起動し、Apache(Webサーバ)とMySQL(データベース)をスタートさせておきます。





2つともスタートに成功し、「Running」という表示が出たら、MySqlの項目のAdminボタンを押して、MySQLの管理ツールを起動します。




1.データベースとユーザを作成

管理ツールはWebベースなので、ブラウザ上で管理ツールのトップメニューが表示されます。
ここでメニューの一番上にある「特権」というタブをクリックします。






ユーザ名、ホスト(localhost)、パスワードを入力します。
phpプログラム用のデータベースなので、php_dbというユーザ名にしました。

データベースが自動的に作成されるように、「ユーザ専用のデータベースを作成」の項目から「同名のデータベースを作成して全ての権限を与える」を選択しておきます。

全て入力したら実行ボタンを押します。



これでユーザが作成され、作成したユーザ専用のデータベースも同時に作成されました。



2.テーブルを作成

画面左にデータベースの一覧が表示されているので、今作ったばかりのphp_dbをクリックします。





「データベースにphp_dbに新しいテーブルを作成する」という欄に、テーブル名とフィールドの数を入力します。

  • 名前は、表示するメッセージのテーブルなのでmessages
  • フィールド数は、項目番号とメッセージを入力するために2つ






次にmessagesテーブルの各フィールドを設定します。




1つ目のフィールドは項目番号です。
フィールド
フィールドの名前を入力します。項目番号はidという名前にしました。
種別
  数値・文字など、フィールドのデータ種別を設定します。項目番号は数値なのでINTを選択。
インデックス
  PRIMARYを選択します。 
  PRIMARYを選択すると、同じ番号を重複して登録することが出来なくなるので、
  一意な項目番号を登録するフィールドに設定すると便利です。
AUTO_INCREMENT
  ここにチェックを入れると、データ追加時に自動的に重複しない番号が設定されます。
  項目番号が勝手に振られると楽なので、ここにチェックを入れます。
コメント
  フィールド説明をメモしておけます。
  後で見たときにわかりやすいように「項目番号」と入力しました。


2つ目のフィールドは表示するメッセージです。
フィールド
  メッセージはmessageというフィールド名にしました。
種別
  メッセージは文字列なので、TEXTを選択。
コメント
  「メッセージ」と入力しました。


文字コードはUTF-8を指定しておきます。

全ての設定を入力して保存ボタンを押すとテーブルが作成されます。









3.テーブルにデータを入れる
管理ツールの一番上のほうにある挿入というタブをクリックします。





messageの入力欄に、PHPプログラムで表示したいメッセージを入力し実行ボタンをクリックします。






画面上の表示タブをクリックし、テーブルにメッセージを無事に登録できたか確認します。
うまく登録できていれば、下のようにメッセージが登録され、項目番号も自動で付けられていることが表で確認できます。






以上で表示するためのメッセージをデータベースに書きこむことができました。
これでやっと、登録したデータを表示するプログラムを作ることができます。

1 件のコメント:

  1. JTechBet launches a new mobile casino app - JTM Hub
    The brand's mobile app allows users to make sports bets on their desktop with 청주 출장안마 a mobile browser. 광주광역 출장마사지 A new mobile 오산 출장샵 app made 경상북도 출장안마 available to JTechBet 경산 출장안마 players

    返信削除