PHP網頁設計
一、UniController
- 設定 MySQL root 密碼
二、建立資料庫
- 建立 test
- 語系 :utf8_general_ci
三、讓PHP連上MYSQL
#MYSQL #資料庫伺服器 $db_host = "localhost"; #資料庫使用者帳號 $db_user = "root"; #資料庫使用者密碼 $db_password = "111111"; #資料庫名稱 $db_name = "test"; #PHP 5.2.9以後 $db = new mysqli($db_host, $db_user, $db_password, $db_name); if ($db->connect_error) { die('無法連上資料庫 (' . $db->connect_errno . ') ' . $db->connect_error); } #設定資料庫語系 $db->set_charset("utf8");四、整理程式
- index.php
<?php
require_once 'mysql.php';
require_once 'function.php';
// //-------- 資料表 ------
// #檢查資料表(users)
// if (!chk_isTable("users")) {
// $sql = "
// CREATE TABLE `users` (
// `uid` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '使用者編號',
// `name` varchar(255) NOT NULL COMMENT '使用者姓名',
// `email` varchar(255) NOT NULL COMMENT '使用者Email',
// `pass` varchar(255) NOT NULL COMMENT '使用者密碼',
// `group` enum('user','admin') NOT NULL COMMENT '使用者群組',
// PRIMARY KEY (`uid`),
// UNIQUE KEY `email` (`email`)
// ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
// ";
// createTable($sql);
// }
// #檢查資料表(ugm_p_prod)
// if (!chk_isTable("prod")) {
// $sql = "
// CREATE TABLE `prod` (
// `sn` int(10) unsigned NOT NULL auto_increment comment 'prod_sn',
// `kind` smallint(5) unsigned NOT NULL default 0 comment '分類',
// `title` varchar(255) NOT NULL default '' comment '名稱',
// `summary` text NULL comment '摘要',
// `content` text NULL comment '內容',
// `price` int(10) unsigned NOT NULL comment '價格',
// `amount` int(10) unsigned NOT NULL comment '數量',
// `enable` enum('1','0') NOT NULL default '1' comment '狀態',
// `choice` enum('1','0') NOT NULL default '0' comment '精選',
// `date` int(10) unsigned NOT NULL default 0 comment '建立日期',
// `sort` smallint(5) unsigned NOT NULL default 0 comment '排序',
// `counter` int(10) unsigned NOT NULL default 0 comment '人氣',
// `icon` varchar(255) NOT NULL default '' comment '圖示',
// PRIMARY KEY (`sn`)
// ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
// ";
// createTable($sql);
// }
- mysql.php
<?php
#MYSQL
#資料庫伺服器
$db_host = "localhost";
#資料庫使用者帳號
$db_user = "root";
#資料庫使用者密碼
$db_password = "111111";
#資料庫名稱
$db_name = "test";
#PHP 5.2.9以後
$db = new mysqli($db_host, $db_user, $db_password, $db_name);
if ($db->connect_error) {
die('無法連上資料庫 (' . $db->connect_errno . ') '
. $db->connect_error);
}
#設定資料庫語系
$db->set_charset("utf8");
- function.php
<?php
########################################
# 建立資料表
########################################
function createTable($sql) {
global $db;
$db->query($sql) or die(printf("Error: %s <br>" . $sql, $db->sqlstate));
return true;
}
########################################
# 檢查資料表是否存在(資料表)
########################################
function chk_isTable($tbl_name) {
global $db;
if (!$tbl_name) {
return;
}
$sql = "SHOW TABLES LIKE '{$tbl_name}'"; //die($sql);
$result = $db->query($sql) or die(printf("Error: %s <br>" . $sql, $db->sqlstate));
if ($result->num_rows) {
return true;//欄位存在
}
return false; //欄位不存在
}