XAMPPを用いてデータベースシステムを作成する4 MySQL編

Web開発
XAMPPを用いてデータベースシステムを作成する3 PHP編
↑からの続きです。 前編までで、XAMPPを起動して自分のパソコン内にApache(Webサーバー)が稼働するようになりました。(なったはずです。) これだけでWebページをテストしながら作っていけます。 動的なW...

↑ からの続きです。

データベースシステムを作成するためには、先にWeb開発の土台を構築しなくてはいけません。

XAMPPをインストールして作るのですが、XAMPP・Apache・PHP・MySQLを正常に動作させるようにする必要があります。

それには、最低限の設定をしなくては正常に動いてくれません。

前回までに、XAMPP・Apache・PHP の設定を主に説明してきました。

最後に今回の MySQL の設定を行って、やっと土台が出来上がることになります。

データベースについて

私、コンピュータ関係は長いのですがデータベースに関しては無知です。

というのも、これまでは大量のデータを取り扱うようなことをすることがなかったからです。

ということは、セキュリティ面においても脆弱というか。

今回、ちょっとデータを大量に取り扱う必要があったので、この記事を含めて一連の記事を書いているわけです。

これまでは、データを扱うのはExcelで事足りていました。

しかし、EXCELでは自己完結型でしかデータを扱えません。

ネットを通して、他の方に必要なデータを提供するにはしんどすぎます。

そこで、データベースの登場です。

データベースはサーバー側で動作させ、データを管理するシステムですのでサーバーを経由してデータのやり取りがスムーズにできます。

それも、ファイルというまとまった単位ではなく必要なデータだけを取り出せるということができます。

Webサービスとしては必須のシステムがデータベースです。

また、セキュリティ的にもパスワードで守られているので安心です。

そんな理由で、いろいろと調べながら忘れてもここを見たら思い出せるようにまとめています。

データベース初心者として

今日までにデータベースシステムって何故必要なの?と思っていた時期がありました。

それは、Windows95の頃から最近までずっとです。

EXCELでもかなりのデータを取り扱うことができるのに、何故、ACCESS を使うのか? と思っていました。

長く書くのも本題から外れますので、何故データベースかを少しだけ。

結論から書くと、データの管理をファイルとして扱うか、データベースとして扱うかの違いでしょうか。

データベースでは大量のデータを簡単?に取り扱えるということですが、それはSQL を使ってデータを取り扱えるといいうことです。

SQL とはデータベースを取り扱うための言語です。

データベース自信もファイルとしてストレージ(記憶装置)に保存されています。

SQL はファイルという単位を意識することなく、ファイル内のデータを取り扱えるというところがいいのではないでしょうか。

ファイルの読み取りや保存は自動的にデータベースシステムがやってくれます。

そのファイルの内容を読み・書き・削除・更新するという動作を SQL で指示できるということです。

EXCEL だとファイルそのものを直接操作しなくてはいけません。

ちょっとした住所録などはEXCELでも良いかと思いますが、その住所録にしても頻繁にデータを更新したり、ある人の住所を探したりする場合、VBA でプログラミングする必要があります。

ファイルへの問い合わせなども含めてファイル操作をプログラムで全て書く必要があり、VBAでのプログラミングは大変です。

データベースもプログラミンを伴いますが、データベースへの問い合わせなど データの取り扱いが簡単にできる命令が SQL には備わっています。

SQL はデータベースを取り扱うための言語ですから当然ですね。

VBA は一般的な汎用言語で、データを取り扱うのに特化した言語ではありません。

データを扱うのが大変というのも当たり前です。

結局、SQL でセキュアにデータを簡単に取り扱えるのがデータベースシステムの良いところということでしょうか。

MySQLとMariaDB

データベースシステムにもいろいろありますが、XAMPPには MariaDB が入っています。

過去のXAMPPにはデータベースソフトとして MySQL が入っていましたが、最近は MariaDB に変わっています。

設定の前にMySQLとMariaDBの説明を少ししておきます。

  • MySQL
    言わずと知れたデータベースシステムの代表格です。
    オープンソースで開発されており、商用にも使え使いやすいデータベースとして世界シェア8割を誇ります。
  • MariaDB
    MariaDB は、MySQL から派生したオープンソースのデータベースで、MySQL の妹分に当たります。
    これまで主に使用されていた MySQL ですが、今後はこの MariaDB が主流になっていくと考えられています。

MySQLとMariaDBの違い

MariaDB の特徴として、MySQLとの高い互換性があります。

ほぼ MySQL と同等の使い方ができますので、MariaDB は MySQL とみなして意識することなく使えます。

MySQL と違うところは、以下のように内部的な部分でしょうか。

  • セキュリティ面・頑健性・パフォーマンスが向上
  • 拡張性・処理性能・品質が向上

当初、MariaDB は MySQL の不具合を定期的に修正し、反映するという作業で開発されていました。

しかし、MySQL がバージョン 5.6 に移行した際、大規模なプログラム変更を行ったために、それ以降 MySQL をベースとした改善を進めることが困難になりました。

そのため、MariaDB  10.0 以降は、MySQL の中から必要な要素を取り込みつつも、独自の機能を加えていくといった流れになっています。

 

以下、XAMPPのMariaDBの設定を説明していきます。

XAMPPの設定では、ここが一番厄介かも知れません。

特に、文字コードに関しての設定はちょっと違うだけで文字化けを起こしたりします。

尚、XAMPPでは現在 MariaDB を使っていますが、コントロールパネルや命令には「MySQL」の名称が使われています。

ですので、以降 「MariaDB」の言葉は使わず、「MySQL」に統一して書くことにします。

以下、MySQLに関する説明です。

rootアカウントのパスワード設定

rootアカウントとは、システムに最初から組み込まれている管理者アカウントのことです。

つまり、「rootアカウントのパスワード設定」とは、MySQLの管理者用のパスワードを設定することです。

このパスワードを設定しておかないと、パスワード無しでデータベースを操作できるようになってしまうのでセキュリティ的には絶対に設定しておかなくてはいけません。

以前はXAMPPのページ上から行えましたが現在はそれができなくなりましたのでコマンドプロンプトからパスワードの設定を行います。

1.XAMPPコントロールパネルから MySQL を起動します。

xampp_mysql

2.Windowsスタートボタンを右クリックして出てくるメニューから「コマンドプロンプト」を選択し、コマンドプロンプト画面を表示します。

3.カレントディレクトリを「C:\xampp\mysql\bin」に移動させます。

現在のカレントディレクトリ> CD C:\xampp\mysql\bin

黄色部分のコマンドを入力し[Enter]キーで、カレントディレクトリが C:\xampp\mysql\bin となります。

灰色部分は何が表示されていてもいいですが、C:\~~~~ というように、頭が C: でないとダメです。

もし、E:\~~~~ というように、違うドライブであれば、

E:\~~~~ > C:

[Enter]キーで、プロンプトは

C:\~~~~ >

に変わります。

cmd4_1

4.MySQLにrootユーザーとしてログイン(接続)します。

黄色部分を入力し[Enter]キーです。

C:\xampp\mysq\bin>mysql -u root

cmd4_5

MariaDB [(none)]>

MySQLプロンプトが表示されると、MySQLにログインしたことになります。

このプロンプトだけは「MariaDB」となっていますが、MySQLプロンプトと書きますので注意してください。

5.rootユーザーのパスワードを設定します。

設定するパスワードを決め、以下のMySQLコマンドを実行します。

ここでは、パスワードを「testpass」とします。

MariaDB [(none)]>update mysql.user set password=password(‘testpass‘) where user = ‘root’;

MySQLプロンプトで黄色部分を入力し[Enter]キーです。(太字下線部分にセットするパスワードを入れます。)

cmd4_6

6.変更点を反映させるMySQLコマンドを実行します。

MariaDB [(none)]>flush privileges;

黄色部分を入力し[Enter]キーです。

cmd4_7

以上で、MySQL の rootアカウントに新しいパスワードが設定されました。

7.一旦、MySQL からログアウトします。

MariaDB [(none)]>exit

黄色部分を入力し[Enter]キーです。

cmd4_8

C:\xampp\mysql\bin>

と、MySQLとの接続が切れコマンドプロンプトに戻ってきます。

MySQLへの接続テスト

rootアカウントのパスワードを設定しましたので、パスワードが有効かどうかテストしてみます。

パスワードが設定されていない場合、

C:\xampp\mysql\bin>mysql -u root

で、ログインできました。

しかし、パスワードが設定されるとこれではログインできません。

cmd4_9

このようなエラーが表示されます。

パスワードの設定ができているとうことですね。

では、

C:\xampp\mysq\bin>mysql -h localhost -u root -p

このようにコマンドプロンプトに入力し[Enter]キーで実行してください。

Enter password:

と、パスワード入力を促すメッセージが表示されます。

rootアカウントに設定したパスワードを入力して下さい。

もし、誤ったパスワード入力であれば、

cmd4_10

先ほどと同じエラーメッセージが表示されます。

cmd4_11

正しいパスワードが入力できればMySQLへの接続が完了し、

MariaDB [(none)]>

というMySQLプロンプトが表示されます。

これで、正常にパスワードが設定されていることが確認できましたので、一旦 MySQL との接続を終了します。

接続を終了する場合は「exit」もしくは「quit」と入力して[Enter]キーです。

cmd4_12

コマンドプロンプトに戻ってきたら、MySQLへの接続は終了です。

phpMyAdmin

ここでまた新たな言葉が出てきました。

MySQL にデータベースを作る場合、上で書きましたように、MySQL にログインして接続し、MySQL コマンドを実行して操作しなくてはいけません。

一々、コマンドをキーインして、データベースやさらにその中に入れるデータもコマンドを介して入力する必要があり面倒くさいものです。

phpMyAdmin とは、ブラウザから使えるMySQL のデータベース管理画面で、簡単にMySQL の操作ができるものです。

phpmyadmin1

SQL文を書くことなく、MySQLのデータベースに対して様々な操作が行えます。

また、ユーザが任意のSQL文を書いて実行することもできます。

データベースに入っているデータを見ることもできますし、コマンドプロンプトからコマンドを入力して操作するよりもずっと簡単にMySQLデータベースを操作できます。

phpMyAdmin は、ブラウザから http://localhost/phpmyadmin/ にアクセスすることにより表示できます。

もしくは、XAMPPコントロールパネルから、「MySQL」行の「Admin」をクリックしてもブラウザに表示できます。

しかし、

xampp_contorol1

このように、MySQL だけが起動している状態で、「Admin」をクリックすると、

phpmyadmin_error2

phpMyAdmin にアクセスできません。

Apache が起動していないからです。

xampp_contorol2

このように、Apache も起動させてください。

以降、XAMPPでデータベースを用いたWebページを作る場合は、Apache と MySQL の両方を起動しておくようにしてください。

phpMyAdmin へのログイン設定

MySQLにrootアカウントのパスワードを設定後、上の方法でphpMyAdminにアクセスしてもこのようなエラー画面となります。

phpmyadmin_error1

「MySQL サーバに接続しようとしましたが拒否されました。」

「config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください。」

と、エラーメッセージが表示されています。

rootアカウントのパスワードを設定すると、phpMyAdminの設定ファイルを変更しなくては phpMyAdmin にアクセスできないからです。

phpMyAdminのデフォルトの設定では、設定ファイルに書かれたユーザー名とパスワードでログインしようとします。

しかし、設定ファイルの初期値はユーザー名が「root」で、パスワード設定は空白になっています。

rootアカウントにパスワードを設定した後にphpMyAdminを利用しようとすると、パスワードが空白に設定されているのでログインに失敗しエラーが表示されるのです。

config.inc.php の設定変更

設定ファイルを修正し、phpMyAdminを利用できるようにします。

phpMyAdminのパスワードなどを記述する設定ファイルは、

C:\xampp\phpMyAdmin 内にある config.inc.php

です。

以下、config.inc.php を修正します。

この設定には、次の2つがあり、どちらかの設定をします。

  • 設定したrootパスワードをphpMyAdminの設定ファイルに記述し、自動でログインするように設定
  • 毎回ログイン画面を表示してパスワードを入力するように設定

1.自動でログインするように修正する

config.inc.php に書かれたrootアカウントのパスワードを変更します。

テスト的に設定したrootアカウントのパスワードは「testpass」でした。

現在、config.inc.php に設定されているパスワードは空(から)になっており、何も設定されていない状態です。

config.inc.php をエディタで開き、以下の部分をご覧ください。

/* Authentication type and info */
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] =;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
$cfg[‘Lang’] = ”;

黄色の部分がパスワードを設定するところです。

パスワードが現在空になっていますので、rootアカウントのパスワードを

$cfg[‘Servers’][$i][‘password’] = ‘testpass’;

このように設定してください。

パスワードは、必ず「’」で囲ってください。

ファイルを上書き保存して完了です。

設定ができれば、phpMyAdminにアクセスできるかテストしてみましょう。

先ほどと同じ手順でXAMPPコントロールパネルのMySQLの行にある「Admin」をクリックします。

ブラウザに phpMyAdmin 画面が表示すればOKです。

2.毎回パスワードを入力するように修正する

先ほどと同じように、config.inc.php 内を修正します。

/* Authentication type and info */
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = ”;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
$cfg[‘Lang’] = ”;

黄色の部分を設定変更します。

現在「config」となっています。これを「cookie」に変更して下さい。

$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;

また、1.でパスワード設定した

$cfg[‘Servers’][$i][‘password’] = ‘testpass’;

この行は

$cfg[‘Servers’][$i][‘password’] = ”;

のように空(から)にしてください。

ファイルを上書き保存して完了です。

テストしてみましょう。

XAMPPコントロールパネルのMySQLの行にある「Admin」をクリックします。

phpmyadmin2今度は、phpMyAdminログイン画面が表示されます。

ユーザー名に「root」

パスワードに「rootアカウントのパスワード」

を入力して「実行」をクリックして下さい。

これで、phpMyAdminにアクセスできます。

こちらの設定はphpMyAdminにアクセスする度にユーザー名とパスワードを入力する必要があるので面倒臭いかも分かりませんが、他の人も使うパソコンならこの設定にしておいた方がセキュリティ面でよろしいかと思います。

さて、ここからがMySQL本体の設定となります。

my.ini ファイル修正を修正する

MySQLに関する設定は my.ini ファイルにまとめられています。

my.ini は、C:\xampp\mysql\bin フォルダにあります。

以下、my.ini に基本的な設定をしていきます。

エディタで my.ini を開いてください。

主に文字コードに関する設定をすることになり、基本となる文字コードをUTF-8として使用することで設定を変更していきます。

尚、行頭に 「#」付いている行はコメント行です。

1.[mysqld]のブロックを修正します。

[mysqld]を検索してください。([mysqldump]の前ですので[mysqldump]で検索した方が探しやすいですね。)

このブロックの最後に

## UTF 8 Settings
#init-connect=\’SET NAMES utf8\’
#collation_server=utf8_unicode_ci
#character_set_server=utf8
#skip-character-set-client-handshake
#character_sets-dir=”C:/xampp/mysql/share/charsets”

というところがあります。

「## UTF 8 Settings」以下、5つの行の「#」を外し、「init-connect=’SET NAMES utf8’」の行の「\」を削除してください。

## UTF 8 Settings
init-connect=’SET NAMES utf8′
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir=”C:/xampp/mysql/share/charsets”

2.[client]、[mysqldump]、[mysql] それぞれのブロックに黄色で示した行を追加します。
[client]
# password       = your_password
port            = 3306
socket          = “C:/xampp/mysql/mysql.sock”
default-character-set=utf8

[mysqldump]
quick
max_allowed_packet = 16M
default-character-set=utf8

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
default-character-set=utf8

4.my.ini の修正終了

ファイルを上書き保存してファイルの修正を終了します。

そして、変更内容を反映させるために MySQL を再起動します。

MySQLの動作テスト

以上でMySQLの基本的な設定を終えました。

MySQLにデータベースを作り、アクセスして正常に動作するかテストします。

テスト用データベースの作成

まず、phpMyAdminを使いテスト用データベースを作成します。

1.phpMyAdminの画面表示

まず、XAMPPコントロールパネルを起動し、Apache及びMySQLが起動していることを確認して下さい。

xampp_contorol2

ブラウザから http://localhost/phpmyadmin/ にアクセスして phpMyAdmin を表示します。

(XAMPPコントロールパネルから「MySQL」行の「Admin」をクリックしてもブラウザに表示できます。)

上で説明しました「phpMyAdmin へのログイン設定」で、毎回ユーザー名とパスワードを入力するように設定した場合、

phpmyadmin2

ユーザー名に「root」、パスワードにrootアカウントのパスワード「testpass」を入力してから「実行」をクリックして下さい。

phpmyadmin1

phpMyAdminの画面となります。

phpMyAdminの画面が表示されましたら、データベースを作っていきます。

データベースを作る前にデータベース名などを先に決めておきましょう。

ここで作成するテスト用データベースは、

データベース名:idle
テーブル名:idlename

とします。

イメージとしては、

sampledb_image

こんな感じです。

テーブルには、id と name の2カラムを作り、それぞれのデータを入力することにします。

2.データベースの作成

phpMyAdminのトップ画面で、左側のツリーを確認しておいてください。

既に作成されてあるデータベース名が縦に並んでいます。

「データベース」をクリックします。

phpmyadmin3

データベース作成画面となります。

phpmyadmin4

 

上で決めたデータベース名:idle を赤枠部分に入力し、「作成」をクリックします。

phpmyadmin6

テーブルの作成画面となります。

phpmyadmin7

左側の既存データベース名のツリーに、今作成した「idle」が追加されていることを確認ください。

3.テーブルの作成

データベースはデータを管理するための大枠です。

EXCELでいうところのブックに相当します。

上でデータベースの大枠を作ったので、中にテーブルを作ります。

テーブルは、EXCELではシートといったところでしょうか。

テーブル名:idlename

カラム数:2(カラムは縦の列です。id と name の2列分)

を入力します。

phpmyadmin8

そして、画面右側の「実行」をクリックすると、カラムの情報を入力する画面となります。

phpmyadmin9

4.テーブル内の2つのカラムの情報を入力します。

phpmyadmin10

赤枠の部分、図のようにデータを入力してください。

データ型は、図のように ▼ をクリックし、メニューから選んでください。

phpmyadmin11

また、名前に「id」を設定した行にある「A_I」の項目クリックします。

phpmyadmin12

すると、「インデックスを追加する」画面が出てきますので、「実行」をクリックしてください。

phpmyadmin13

すると、この画面は消え、クリックした「A_I」の項目にチェックマークが入ります。

これは、テーブルにデータを入力する時、自動的に「id」項目に番号が入っていくようにする設定です。(「A_I」は、Auto Increment の略です。)

以上の入力が終わりましたら、「保存する」をクリックしてください。

phpmyadmin14

テーブルの作成が完了し、「テーブルの構造」画面が表示されます。

phpmyadmin15

これで、やっとデータを入力していけます。

5.テーブルにデータを入力します。

その前に、左側のツリーを見てください。

phpmyadmin16

現在、存在するデータベースがabc順に縦に並んでいます。

赤枠が先程作った「idle」データベースです。

一番上の「New」はデータベースではなく、データベースを新しく作る時にクリックすると、データベース作成画面になります。

ちなみに、画面左上の「phpMyAdmin」をクリックすると、phpMyAdminのトップ画面に戻りますので、どの画面か分からなくなったらここをクリックしてください。

それぞれのデータベース名をクリックすると、そのデータベースの構造の画面になります。

また、データベース名の左側の「+」をクリックすると、

phpmyadmin17

「-」になり、データベース中のテーブルがツリーに表示されます。

「idlename」上の「New」をクリックすると、新規テーブルを作る画面となります。

「+」をクリックすると、その項目の内容が表れるわけです。逆に「-」をクリックすると、表示されていたツリーが閉じます。

ツリー中の「idlename」をクリックしてください。

phpmyadmin18

「idlename」テーブルの内容を表示する画面となります。

今はテーブルの内容は空の状態です。

データ入力するに赤枠部分の「挿入」タブをクリックします。

phpmyadmin19

「idlename」テーブルにデータを入力していける画面となります。

phpmyadmin20

一つの赤枠が「id」と「name」をセットした1行分(1人分)です。

赤枠が2つありますので2行分(2人分)を入力できます。

sampledb_image

テーブルに入れるデータです。

phpmyadmin21

「name」行の「値」欄に2人分の名前を入力します。

「id」は、テーブルを作る時に「A_I」を設定しましたので、自動的に1、2 と入りますので入力は不要です。

「A_I」を設定していない場合は、入力が必要となります。

データを入力したら「実行」をクリックします。

「実行」ボタンが2つありますが、どちらでも結構です。

すると、SQL画面となります。

phpmyadmin22

本来、テーブルを作ったり、データの入力は、SQLの命令を実行して行います。

phpMyAdmin は上のような操作だけで、自動的にその操作に対するSQL文を作り、実行します。

赤枠部分に、

2 行挿入しました。
id 2 の行を挿入しました

INSERT INTO `idlename` (`id`, `name`) VALUES (NULL, '白石 麻衣'), (NULL, '平手 友梨奈');

とメッセージが出ていますが、何をするSQL文が実行されたのかを表示しています。

phpmyadmin23

画面上部の「表示」タブをクリックするとテーブルに追加されたデータの一覧が表示されます。

phpmyadmin24

残り3人分も上でデータ入力した手順の繰り返しです。

「挿入」タブをクリックします。

今度は、画面下の赤枠部分を「3 行づつ挿入を行う」というように「3」にすると、データ入力枠が3行分表示されますので、一気に3人分が入力できます。

phpmyadmin25

3人分の名前を入力し、「実行」ボタンをクリックします。

「表示」タブをクリックして、5人分のデータが入ったかどうかを確認します。

phpmyadmin26

 

6.ユーザーの追加

「root」は全ての権限を持つ(全ての操作ができる)ユーザーです。

そういうことから、作成したデータベースにPHPなどからアクセスする場合、rootアカウントでアクセスするのはあまり望ましくありません。

そこで作成したデータベースに対して必要な権限だけを持つユーザーを作成し、PHPからアクセスする時はそのユーザーを使うようにします。

ユーザーを作成するには画面左側に表示されているデータベースツリーから「idle」をクリックして下さい。

phpmyadmin27

そして、「特権」タブをクリックします。

phpmyadmin28

選択したデータベースにアクセスできるユーザーの一覧が表示されます。

現在、アクセスできるのは「root」ユーザーしかありません。

phpmyadmin29

「Add user account」をクリックして、新しいユーザーを追加します。

phpmyadmin30

ユーザーの追加画面が表示されます。

phpmyadmin31

ホスト名:localhost
ユーザー名:idlemaster
パスワード: idlepass

として、新しいユーザーを作成します。

phpmyadmin33

赤枠が設定する部分です。

User Name:idlemaster

Host name:▼ をクリックして出てくるメニューから「ローカル」を選択してください。
と、同時に「localhost」が自動的に入ります。

パスワード:idlepass

Re-type:idlepass

をそれぞれ入れてください。

そして、「Grant all privileges on database idle.」をチェックしてください。(デフォルトでチェックされています)

「データベース 「idle」に全ての特権を与える。」という意味です。

以上の設定をしましたら、この画面を下にスクロールすると、右下に「実行」ボタンがありますのでクリックします。

phpmyadmin34

これで、新規ユーザーが追加されます。

phpmyadmin35

以上でテスト用のデータベース、テーブル、データ入力、ユーザーの追加が完了しました。

最後に、実際にテスト用のデータベースにアクセスして、データを読み、表示できるかを確認します。

PHP で MySQLデータベースにアクセスする

上で作成したテスト用のデータベースにアクセスする PHPプログラム を作り、正常にデータを読み込めるかどうかをテストします。

PHPプログラム

以下が、これまでに作ったデータベースへアクセスし、ブラウザに読み込んだデータを表示するPHPプログラムです。

2行目 $dsn = ‘mysql:dbname=idle;host=localhost’;
3行目 $user = ‘idlemaster‘;
4行目 $password = ‘idlepass‘;
9行目 $sql = ‘select * from idlename‘;

黄色部分にテスト用データベースのデータベース名、ユーザー名、パスワード、テーブル名をそれぞれセットします。

これを test.php というファイル名で、C:\xampp\htdocs に文字コードをUTF-8にして保存してください。

memotyo

文字コードを「UTF-8」にするには、エディタに「メモ帳」を使っているのであれば、「保存」ボタン左側の「文字コード」のメニューで「UTF-8」を選んでください。

尚、「メモ帳」をエディタとして使うには、少し役不足の面があります。

エディタって何? どのように使う?
「エディタ」って知ってますか? 文字を入力して編集するソフトです。 プログラマには必須のソフトですが、パソコン初心者にはどうでもいいようなソフトです。 ですが、初心者にとってもエディタは便利な道具として使えます。 プ...

↑の記事を参考にもう少し良い機能を持つエディタを使うようにしましょう!

test.php を実行する

まず、XAMPPコントロールパネルを開き、ApacheとMySQLを起動します。

次に、ブラウザを開き http://localhost/test.php へアクセスします。

PHPプログラムで指定したテーブルからデータを取得し画面に表示されます。

php_test1

よくあるPHP実行時のエラー

1.プログラムをエディタで書いていく時にうっかりミスで次のようなエラーが出る場合があります。

php_test2

赤線を引いた部分に「文法エラー」が「10行目」にあると表示されています。

これは、PHPプログラムの10行目に書いてある命令などに記入ミスなどがある場合ですので、プログラムを見直して修正してください。

2.エディタでプログラムを書き、保存する時に文字コードを「UTF-8」に設定しなかった時は表示はされますが、日本語が文字化けする時があります。

php_test3

この時は「UTF-8」に設定して、保存し直してください。

3.MySQLの設定などに不備があった場合にも文字化けが起こります。

php_test4

これは、PHPプログラムを「UTF-8」に設定して保存していても、my.ini を上で行いました設定変更をしないで実行した時の表示です。

my.ini の設定を見直してください。

文字化けが起こった時の対処は難しいですが、ネットで検索するといろいろと対策が書かれていますので参考にしてください。

以上、かなり長い記事となりましたが、やっとこれで Apache・PHP・MySQL を使ってWebサイトを作っていける準備が整ったわけです。

しかし、ここからが本番です。

さらにそれぞれの細かな使い方や作り方を勉強していく必要があります。

開発物は大変ですね!

コメント

タイトルとURLをコピーしました