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; //欄位不存在
}