<!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>
<?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();
}
}
?>
<?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();
}
?>
<?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;
}
?>
<?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;
}
?>