轉載自 http://asper.pixnet.net/blog/post/25729866   如有侵犯著作權,煩請告知

--------------------------------------------------------------------------------------------------

CI的文件看的差不多了,該來實際寫一個網站才能知道自己懂多少

於是設定寫一個活動報名網站,功能很簡單

首頁是所有活動列表,進去後使用者可以報名參加

藉此可以練習FORM與資料處理的功能

管理者可以到後台新增活動,檢視報名資料,製作表單等

功能很簡單,但已經囊括大部分PHP常用功能,也可與我之前開發經驗做對比

引言就到這,開始準備設定值

===========================

  1. 裝好Appserv (Apache + PHP + Mysql + phpmyadmin)
    由於是開發環境,直接用整合包比較方便; 使用2.5.10版本
  2. 下載CodeIgnitor,目前版本為1.7.2
  3. 解壓縮檔案到\www\ci,結構應為
    www\ci\
        system\
        user_guide\
        index.php
        license.txt
    其中user_guide可以刪除
  4. 移除index.php,
    如果不喜歡網址出現index.php (ex:http://127.0.0.1/ci/index.php/signup/index/),可作以下設定移除。
  5. 新增.htaccess檔案,內容如下
        RewriteEngine on
        RewriteCond $1 !^(index\.php)
        RewriteRule ^(.*)$ index.php/$1 [L]

    大致意思是,如 果網址有index.php就跳過,其餘都改寫成index.php/網址接的東西,這樣講聽的懂才有鬼
    http://127.0.0.1/ci/index.php/signup => 有index.php,跳過
    http://127.0.0.1/ci/signup                  => 改寫為 http://127.0.0.1/ci/index.php/signup
  6. 修改config,檔案在www\ci\system\application\config\config.php
        $config['base_url']    = "http://127.0.0.1/ci/";  //原本是$config['base_url']    = "http://www.example.com/";
        用意讓CI知道你網址是啥,內容的連結都會自己加上這串基底網址

        $config['index_page'] = "";                                //原本是$config['index_page'] = "index.php";
        也是產生連結的基底。如果要連結到signup
        原本設定會產生http://127.0.0.1/ci/index.php/signup
        改為空值會產生http://127.0.0.1/ci/signup
       
    網址看起來比較乾淨 ( 我以前是用 index.php?op=signup ),且容易被搜尋引擎搜尋到。
  7. 如果打開網頁出現錯誤,請修改Apache Config 開啟mod rewrite功能
    Apperv\Apache2.2\conf\http.conf
    #LoadModule rewrite_module modules/mod_rewrite.so  //把#字號移除
  8. 接下來要設定DB,修改Application\config\database.php
        $db['default']['hostname'] = "localhost";
        $db['default']['username'] = "signup";
        $db['default']['password'] = "123456";
        $db['default']['database'] = "signup";
        $db['default']['dbdriver'] = "mysql";
    這邊是測試,所以密碼非常不嚴謹XDD
  9. 建立DB: signup 與table: event, joiner
    event 記錄活動資訊,joiner記錄報名資訊。以下結構可參考
        CREATE TABLE `event` (
        `sn` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
        `topic` VARCHAR( 50 ) NOT NULL ,
        `desc` VARCHAR( 250 ) NOT NULL ,
        `start_time` DATETIME NOT NULL ,
        `end_time` DATETIME NOT NULL ,
        `joiner_no` INT NOT NULL
        ) ENGINE = MYISAM ;
        
        CREATE TABLE `joiner` (
        `sn` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
        `name` VARCHAR( 20 ) NOT NULL ,
        `sex` ENUM( 'm', 'f' ) NOT NULL ,
        `mobile` VARCHAR( 10 ) NOT NULL ,
        `event_sn` INT NOT NULL ,
        `time` DATETIME NOT NULL
        ) ENGINE = MYISAM ;
    --------------------------------------------------------------------
arrow
arrow
    全站熱搜

    halladay5364 發表在 痞客邦 留言(0) 人氣()