線上書籍

Home

PHP網頁設計

一、UniController

  1. 設定 MySQL root 密碼

二、建立資料庫

  1. 建立 test
  2. 語系 :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");

四、整理程式

  1. 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); // }

     

  2. 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");

     

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

     
  4.