見出し画像

PHPでMySQLに接続する方法【さくらのレンタルサーバ利用】

珍しくフレームワークもCMSも利用せず、PHPでサイト構築依頼がありました。

ちょっと迷ったのですが、『そういえばフレームワークやCMSを利用しないサイト構築はやったことなかったな、せっかくだからこの機会にやってみるか』と思い受けることにしました。

何事も基礎が大事ですので、改めてPHPの学習をしてみようと思います。


さくらレンタルサーバの設定

今回はさくらレンタルサーバ、プランは「スタンダード」を利用します。

サーバの契約を行ったら、管理画面にログインします。

スクリーンショット 2019-10-01 8.44.24

(お!管理画面が新しくなっている!)


データベース作成

次にデータベースを作成します。

管理画面より「Webサイト/データ」→「データベース」をクリックします。

スクリーンショット 2019-10-01 8.45.41

「新規追加」をクリックします。

スクリーンショット 2019-10-01 8.47.16

下記設定します

・データベースバージョン
・データベース名
・データベース文字コード

また、「同意する」にチェックを入れて「作成する」をクリックします。

スクリーンショット 2019-10-01 8.48.52

これでデータベースが作成されました。


PHPファイルの作成

次にPHPファイルを作成します。まずはDBとの接続のファイルを作成します。

その前に、接続には下記情報が必要になります。

・データベースサーバー
・データベース名
・データベースユーザ名
・データベースパスワード

確認のため、さくらレンタルサーバの管理画面を確認します。先ほど同様「Webサイト/データ」→「データベース」をクリックします。

スクリーンショット 2019-10-01 8.45.41

データベース情報を確認します。

・データベースサーバー:***.sakura.ne.jp
・データベース名:先ほど作成したデータベース名
・データベースユーザ名:ユーザ名
・データベースパスワード:接続先パスワード

スクリーンショット 2019-10-01 8.57.38

次に『db.php』というファイルを作成します。ファイルにこちらの情報を記載します。

<?php
$host = "***.sakura.ne.jp";
$dbName = "先ほど作成したデータベース";
$user = "ユーザ名";
$password = "接続先パスワード";
$dsn = "mysql:host={$host};dbname={$dbName};charser=utf8";
?>

次に接続確認のファイル『access.php』を作成します。

<?php
require_once('db.php');
try {
   $pdo = new PDO($dsn, $user, $password);
   $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
   $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
   echo "データベース{$dbName}に接続しました。";
   $pdo = NULL;
} catch (Exception $e) {
   echo "<span class='error'>エラーがありました。</span><br>";
   echo $e->getMessage();
   exit();
}
?>

ファイル完成したらサーバにアップします。

アップ後に「***/access.php」にアクセスします。うまく接続されていれば下記のような画面が表示されます。

スクリーンショット 2019-10-01 9.09.50

なお、接続エラーの場合はエラー画面が表示されます。

スクリーンショット 2019-10-01 9.24.55


以上です。お疲れ様でした。


読んでいただきありがとうございます。