介護ヘルパーからITエンジニアになった話
エックスサーバーでデータベース設定をする方法
レンタルサーバー

エックスサーバーでデータベース設定をする方法

エックスサーバーでデータベース設定をする方法を解説します。
データベース設定を行なった後にデータを入れて、それをWEBページで確認するところまでスクショ満載で解説します。

この記事でやること

  • MySQL設定でデータベースを追加
  • MySQLのユーザー設定
  • データベースにデータを入力
  • WEBページで確認

MySQL設定でデータベースを追加

まずはエックスサーバーの会員ページにログインをします。
サーバーパネル(メニュー)の中にMySQL設定というメニューがあるので、それをクリックします。
その中にデータベースを追加というボタンがあるのでそれをクリックします。

エックスサーバー:MySQL設定でデータベースを追加
エックスサーバー:MySQL設定でデータベースを追加

MySQLデータベース名を入力します。
半角16文字以内となっているので、ひらがなや漢字は使えず、英数字で入力します。
今回私はdemoと入れますが、もちろんお好きな名前で入れることができます。
入力したら追加するを押します。
MySQLデータベース設定:データベース名を入力して追加
MySQLデータベース設定:データベース名を入力して追加

MySQLのユーザー設定

データベースを追加したら、そのデータベースを管理するユーザー設定をします。
下記のスクショのユーザー設定ボタンをクリックします。

MySQL設定:ユーザー設定
MySQL設定:ユーザー設定

最初はユーザーが登録されていないので、新たにユーザーを追加します。
ユーザーを追加ボタンがあるのでそれを押します。
MySQL設定:ユーザーを追加
MySQL設定:ユーザーを追加

ユーザーを追加の画面で新しくMySQLユーザーを作成を選択し、MySQLユーザーIDを入力します。
MySQLユーザーIDは半角5文字以内で設定するので、割と短めの名称にする必要あります。
パスワードは半角8文字以上、16文字以内で入力する必要があります。
パスワード入力欄の右隣に目のマークがあるのでそれをクリックするとパスワードが見える状態になるので確認しながら入れることができます。

今回はMySQLユーザーIDをuserとして、パスワードをpassword_20260610としています。
もちろんこれはそれぞれ任意に入力いただいて大丈夫です。
入力したら追加するを押します。
MySQL設定:ユーザー設定
MySQL設定:ユーザー設定
データベースにアクセス権所有ユーザーが追加されました。
これでデータベース設定とユーザー設定が完了しました。
MySQL設定:データベース追加とユーザー設定の完了
MySQL設定:データベース追加とユーザー設定の完了

phpmyadminを使ってデータ入力

データベースの設定ができたので、次はデータベースに情報を入れてそれをWEBページで表示する、というのをやってみましょう。
メニューの中にphpmyadminというのがあるので、それをクリックしてください。

メニューの中からphpmyadminを選択
メニューの中からphpmyadminを選択

phpmyadminをクリックすると、下記のスクショのようにユーザー名とパスワードを求められます。
これはエックスサーバーの会員ログイン情報ではなくて、先ほど登録したデータベースのユーザーIDとパスワードを入力します。
phpmyadminへのログイン
phpmyadminへのログイン

先ほど登録したのは下記のスクショのような情報でしたね。
ここで登録したMySQLユーザーIDとパスワードをphpmyadminのログイン画面で入力します。

私はこのログインがなかなかうまくいかなかったのですが、実はパスワードをpasswrd_20260610としていたらしく、、(passwrd、、)
自分ではpasswordと打ったつもりだったのですが、、
なのでなかなかログインできずに時間使ってしまいました。。^^;
しょうがないのでこのままpasswrdで突き進みました。
(パスワードの打ち間違えにはお気をつけください。。)
データベースのユーザーIDとパスワード
データベースのユーザーIDとパスワード

テーブルの作成

phpmyadminにログインできると、下記のスクショのような画面がでます。
最初は何の情報も入っていないです。
まずはテーブルを作ってみましょう。

今回は、foodというテーブルを作って、そこに食べ物の名前や金額を入れて、それをWEBページで表示させたいと思います。
新しいテーブルを作成のところに、テーブル名をfood、カラム数を4と入れて作成をします。
(テーブル名やカラム数はお好きなもので作ることができます)

新しいテーブルを作成
新しいテーブルを作成

カラムの設定

下記のスクショのようにカラムの設定画面が出ます。
カラムとは、データベースの「項目」のようなもので、どんな情報を入れていくのか設定していきます。
データベースの項目はカラムと呼んでいる、くらいの認識で問題ないです。

名前にid、name、yen、memoを入れます。
idとyenのタイプはINTにします。
INTは数値のことで、idやyenには数字を入れるのでINTにしています。
nameとmemoのタイプはVARCHARにします。
VARCHARは文字列を入れるときに使います。
TEXTも文字列を扱いますが、文字数がある程度決まっている項目はVARCHARの方が適切です。

INT:数値を入れるときに使う
VARCAHAR:文字列を入れる時に使う。ある程度長さが決まっている時。
TEXT:文字列を入れる時に使う。けっこう長い文字を入れる時。

最初は、数値はINT、文字はVARCHARかTEXTという認識でいいです。
(VARCHARとTEXTの違いを厳密には説明できなかったので、私は今回調べてみて初めてちゃんと知りました。。)

idの列のAIという項目にチェックを入れます。
データベースでのAIというのはAUTO_INCREMENTのことを指します。
(自動的に番号を振る、という意味です。)
これにチェックをつけると、この項目は連番を自動的に振ってくれます。
例えば最初にデータを入れると、idは1となり、次にデータを入れるとidは2となる具合です。

カラムの設定が良ければ保存するを押します。

カラムの設定
カラムの設定

データ入力

カラムの保存が完了すると、下記スクショのようにカラムの情報が確認できます。
テーブルとカラムの設定ができたので、今度はその入れ物に情報を入れてみましょう。
タブの中に挿入というタブがあるので、それをクリックしてください。

カラムの表示
カラムの表示

挿入画面で情報を入れていきましょう。
情報を入れたら画面下の実行を押します。
データの挿入画面
データの挿入画面

2行を挿入しました。と表示されました。
正しく情報を入れられました。

この表示の下にテーブル◯◯上でクエリを実行するという文章があって、その下にINSERT INTO〜という文章が出ているかと思いますが、
これを実行すると同じ情報をもう一度挿入することになるので、それは実行しなくて良いです。
データの挿入結果
データの挿入結果

同じ要領でまた情報を2つ入れて、タブの表示を押してみます。
すると、入れた情報を表示して見ることができます。
情報を表示で確認
情報を表示で確認

これでデータベースに必要な情報を入れることができました。
食べ物のテーブル(food)とその中身です。

WEBページで表示を確認

今度はこれをWEBページで表示させてみましょう。

エックスサーバーの会員ページからファイルマネージャを開いてください。

会員ページからファイルマネージャを開く
会員ページからファイルマネージャを開く

サーバー名.xsrv.jp → public_htmlへと進み(ダブルクリックすると進めます)、下記のスクショのようにdatabase.phpというファイルを作成します。
database.phpファイルの作成
database.phpファイルの作成

左上にある新規ファイルを選択し、database.phpというファイル名を入力します。
ファイル名の文字コードはUTF-8を選択します。
そして作成を押します。
新規ファイルから作成
新規ファイルから作成


database.phpのコードについて

database.phpファイルを作成したらそのファイルを編集します。
ファイル名を右クリックすると編集メニューが出るので、それを選択し、編集画面を開きます。

database.phpの中身は以下のコードにします。

<?php
// データベース接続設定(環境に合わせて変更してください)
$host     = 'localhost';
$dbname   = '*****_demo';   // ← 使用するデータベース名
$user     = '*****_user';      // ← データベースのユーザー名
$password = 'passwrd_20260610';      // ← データベースのパスワード

try {
    // PDOでデータベースに接続
    $pdo = new PDO(
        "mysql:host={$host};dbname={$dbname};charset=utf8mb4",
        $user,
        $password,
        [
            PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        ]
    );

    // foodテーブルから全カラムを取得
    $sql  = 'SELECT * FROM food';
    $stmt = $pdo->query($sql);
    $foods = $stmt->fetchAll();

} catch (PDOException $e) {
    exit('データベースエラー: ' . $e->getMessage());
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>food一覧</title>
    <style>
        table { border-collapse: collapse; }
        th, td { border: 1px solid #ccc; padding: 8px 16px; }
        th { background: #f0f0f0; }
    </style>
</head>
<body>
    <h1>food一覧</h1>
    <table>
        <tr>
            <th>ID</th>
            <th>名前</th>
            <th>値段</th>
            <th>メモ</th>
        </tr>
        <?php foreach ($foods as $food): ?>
        <tr>
            <td><?php echo $food['id']; ?></td>
            <td><?php echo $food['name']; ?></td>
            <td><?php echo $food['yen']; ?>円</td>
            <td><?php echo $food['memo']; ?></td>
        </tr>
        <?php endforeach; ?>
    </table>
</body>
</html>

phpというプログラミング言語で書かれています。
最初はこれを全部理解する必要はありません。
やっていくうちになんとなく理解できることが増えていくので、気にしなくて大丈夫です。
私はプログラミングを習いたての頃は、先輩からよく「おまじない」と聞かされていました。
コードの詳細はよく分からなくても、おまじないのように動くからです。
丸ごとコピペして、データベースの設定だけご自身のデータベース・ユーザー情報に変えれば動きます。

記述されている内容の解説は以下の通りです。

1.データベース接続設定

データベースの情報を設定しています。ご自身のデータベース情報を''の間に入れます。
入力するときは半角の英数字で入力します。

php:データベースの接続設定
php:データベースの接続設定

2.データベースに接続しfoodテーブルから情報を取得

1で設定したデータベースに接続し、foodテーブルから情報を全て取り出しています。
取り出した情報は$foodsに入ります。
情報が正しく取れなければエラーを返す、というtry(catch)という書き方をしています。

php:データベースの情報を取得
php:データベースの情報を取得

3.htmlで表示

WEBページで表示するためにhtmlで表示させます。
<style>のところは色や間隔などを指定しています。
phpのforeachは$foodsに入っている情報を1つずつ出して、という処理をしています。

htmlで表示
htmlで表示


このdatabase.phpのコードをファイルマネージャのdatabase.phpに入れて更新ボタンを押します。
ファイルマネージャでdatabase.phpの内容を更新
ファイルマネージャでdatabase.phpの内容を更新


WEBページで表示を確認します。
ご自身のエックスサーバー名.xsrv.jp/database.phpというURLにアクセスすると、ページが開けます。
foodテーブルの中身が1つずつ表示されているのが確認できるかと思います。
これがWEB上(フロントページ)で確認できると、、、かなり嬉しいです。

WEB上で表示を確認
WEB上で表示を確認

エラーが出た時の対処法

もしここまでやってうまくいかない場合、、、がよくあります。
というより、エラーの連続なのが常です。
プログラミングはエラーの繰り返しをしながら成功していきます。

例えば以下のスクショのようなエラーです。
phpではどこか1つでもエラーになると動作しなくなります。(かなり厳密)
以下のようなエラー文は本当に何度も出ます。
逆にエラー文が出ている方がどこが原因でエラーになっているかがわかるのでむしろありがたいです。
このエラー文は、
php「こっちで予測してない書き方してるからdatabase.phpの21行目あたりを見てくれよ」
みたいに言っているようなものです。

phpのエラー文
phpのエラー文

それではdatabase.phpの21行目を見てみましょう。
下記のスクショの赤線を引いたところ。
コードの最後の;が全角の;になっています。
phpのコードでは半角の英数字しか使えません。
echo 'こんにちは';のように''や""で囲むことで、中の全角テキストを表示することはできますが、phpのコード自体は半角英数字で書くことが絶対条件になります。
最近ではチャットAIが便利になってきたので、エラーが出ている21行目あたりをチャットAIに投げると、エラー箇所を教えてくれたりします。
エラー箇所の特定
エラー箇所の特定


ということで、今回はエックスサーバーでのデータベースの設定とphpmyadminを使ってのデータベース情報の入力、そして入れた情報をWEBページで確認することをやってみました。
ここまでできるとphpを使ってのデータベースの基本ができるので、あとはこれを応用してサイトやシステムを作ったりするだけなので、かなり良い感じだと思います。

最後まで記事を読んでくださりありがとうございます。



今すぐエックスサーバーを試してみよう

10日間の無料お試し期間あり。クレジットカードなしでもOK。

無料で試してみる → →

関連記事