connet.lolipop.jp
トップページ
メニューの表示及びデータベースのメーキング。

index.php
              <!DOCTYPE html>
              <html lang="ja">
              <head>
              <meta charset="utf-8">
              <title>画像データベース:トップページ メニュー</title>
              </head>
              <body style="background:#edf5ff">
              <h1>画像データベース</h1>
              <br /><br />
              <a href="insert.php">登録</a><br />
              <a href="show_All.php">全データ表示</a>
              <div>
              <?php
              // データベースのメーキング。
              require_once('dbmaking.php');
              ?>
              </div>
              </body>
              </html>
MariaDB(Mysql)データベースオブジェクトを作成
関連するファイルからの呼び出しに応じて、データベースのオブジェクトを作成して返す。

imageDB.php
               <?php
               /**
                * MariaDB(Mysql)データベースオブジェクト作成
                */
               
               function executeQuery() {		
                 $url = "localhost";
                 $user = "root";
                 $password = "";
                 $dbName = "imagedb"; // DB名
                 
                 $pdo = null;
                 try {
                   // PDOクラスオブジェクトを作成
                   $pdo = new PDO("mysql:host=$url; dbname=$dbName", $user, $password);
                   // エラー処理モード
                   $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
                   return $pdo;
                 } catch (PDOException $e) {
                 	print 'Database Connection Error '.$e->getMessage();
                 	$pdo = null;
                 	die();
                 }
               }
               ?>
データベースのメーキング
データベース/テーブルの存在を確認し結果処理を行う。

dbmaking.php
          <?php
          /**
           * Database new making
           */
          
          // データベースに接続
          $url = "localhost";
          $user = "root";
          $password = "";
          $dbName = "imagedb"; // DB名
          $stmt = null;
          // SHOWステートメント
          $sql="SHOW DATABASES LIKE '".$dbName."'";
          try {
            $pdo = new PDO("mysql:host=$url;", $user, $password);
            // エラー処理モード
            $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
            $stmt = $pdo->prepare($sql);
            $stmt->execute();
            $dbnameget = $stmt->fetch(PDO::FETCH_COLUMN);
            $pdo = null;
          } catch (PDOException $e) {
              die('<br />database error ! '.$e->getMessage()); // 終了
          }
          // DB存在の結果処理
          if($dbnameget == "imagedb"){							
            // テーブルが存在しないなら作成
            require_once('createTable.php');
            die(); // 終了           
          } elseif ($dbnameget != "imagedb") {
             echo '<br /><br /><span style="color:#bc0000;">Database new making</span><br />';
             // データベース作成
             require_once('createDB.php');
             print $dbcreatesuccess = getDb();
             echo '<br />';
             // テーブル作成
             require_once('createTable.php');
             print $tblcreatesuccess = getTbl();
          }
          ?>
データベース作成
データベースを新規に作成する。

createDB.php
          <?php
          /**
           * データベース作成
           */
          
          // パラメータ初期値
          $url = "localhost";
          $user = "root";
          $password = "";
          $dbName = "imagedb"; // DB名
          // CREATEステートメント
          $sql = 'CREATE DATABASE '.$dbName;
          try {
            // オブジェクトを作成
            $pdo = new PDO("mysql:host=$url;", $user, $password);
            // エラー処理モード
            $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
            $stmt = $pdo->prepare($sql);
            $stmt->execute();
            $result = '<span style="color:#bc0000;;">- DB created successfully</span>';
            $pdo = null;
          } catch (PDOException $e) {
             print 'DB create error!'. $e->getMessage();
             die();
          }
          
          // メッセージ
          function getDb(){
            global $result;
            return $result;
          }
          ?>
テーブル作成
テーブルが存在しないなら作成する。

createTable.php
          <?php
          /**
           * テーブルを作成
           */

          // パラメータ初期値
          $url = "localhost";
          $user = "root";
          $password = "";
          $dbName = "imagedb";
          $table_name = "image_table";
          // CREATEステートメント-テーブルが存在しないなら作成する
          $sql = 'CREATE TABLE IF NOT EXISTS '.$table_name.'
          	(id INT AUTO_INCREMENT, imgName VARCHAR(256) NOT NULL, imgType VARCHAR(64) NOT NULL, imgContent MEDIUMBLOB NOT NULL, imgComment VARCHAR(256) NULL, 
          	created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, 
          	updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
          	PRIMARY KEY(id)
          )';
          try {
            // オブジェクトを作成
            $pdo = new PDO("mysql:host=$url; dbname=$dbName", $user, $password);
            // エラー処理モード
            $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
            $stmt = $pdo->prepare($sql);
            $stmt->execute();
            $result = '<span style="color:#bc0000;">- TABLE created successfully</span>';
            $pdo = null;
          } catch(PDOException $e) {
          	print 'TABLE create error! '. $e->getMessage();
          	die();
          }
          
          // メッセージ
          function getTbl(){
            global $result;
            return $result;
          }
          ?>		
Search
Google


↟ このページの先頭へ