用PHP製作留言板

來源:互聯網
上載者:User
我們在很多網站上都能看到各式各樣的留言板,它是網站與訪客之間進行交流的主要手段之一。一個設計合理,介面優美的留言板程式能從側面體現網站良好的服務,給來訪使用者留下美好的印象,增強使用者對網站的信心。留言板從程式角度來看其實很簡單,難在樸實無華的功能中有創意的表現。下面我們僅以PHP指令碼程式為例,從程式的角度講述怎樣製作留言板。   
   留言板實現的原理一般有兩種,即檔案型和資料庫型。它們是以留言資訊在伺服器的存放方式來區分的。由於檔案型留言系統難以勝任多使用者、大容量的資訊處理和查詢事務,因此具有良好延展性的資料庫驅動方式是很多交易處理應用的首選。下面我們以PHP、Mysql系統為平台構建一個基本的留言板。   基本的留言板由留言填寫、儲存、顯示、管理等程式組成,架構很簡單,但是涉及了PHP+Mysql結構的大部分操作,是我們學習PHP編程的絕佳入門練習。   
   1.資料庫結構:   
   留言編號 id int 自動遞增   
   留言者姓名 name varchar 20 最多20個字元   
   留言時間 msgdate datetime 日期型   
   電子郵件 email varchar 40 最多40個字元   
   留言內容 msg text 類型   
   這是一個簡單的留言儲存模型庫,根據設計需要還可以增加一些欄位,例如記錄訪問者的IP地址、作業系統類型等特徵,為進一步分析客戶群體提供依據。   
   2.填寫留言的HTML檔案:   
   write.htm   
   該檔案構造了留言本最基本的介面,定義了一個包含姓名、電子郵件、留言內容等基本填寫項目的表單,提交後將由savemsg.php程式進行錯誤校正和入庫處理。   3
   . 錯誤校正和入庫處理savemsg.php   
      {   Sdb = mysql_connect(′localhost′,′username′,′password′); //串連資料庫,注意將使用者名稱、口令替換成自己的使用者名稱和口令,以符合實際情況   
   mysql_select_db(′test′); //選擇guesbook表所在資料庫,這裡是test庫   
   Squery=″INSERT into guestbook(name, email,msgdate,msg) values(′Sname′, ′Semail′, now(),′Smsg′)″; //構造插入資料的SQL語句   
   mysql_query(Squery, Sdb); //執行插入資料操作   }   ?>   
   我們可能注意到:在SQL語句中我們使用了Mysql的NOW()函數以‘YYYY-MM-DD HH:MM:SS’的形式返回當前的日期時間,並直接存到DATETIME欄位中(事實上在定義欄位時就可以將msgdate欄位的預設值設定成NOW(),這樣我們對程式就不必另行處理了),另外CURDATE()以‘YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE欄位中,CURTIME()以‘HH:MM:SS’的格式返回當前的時間,可以直接存到TIME欄位中。   
   4.查看留言view.php   
     
     
      mysql_select_db(′test′); //選擇資料庫   
   Squery=″select * from guestbook″; //構造查詢語句   
   Sresult=mysql_query(Squery, Sdb); //執行查詢語句   
   echo ′姓名 電子郵件 留言時間 留言內容
′;   
   //構造表格頭   
   while(Srow = mysql_fetch_array(Sresult)) { //用迴圈輸出表格   
   echo ′ ′.Srow[″name″].′ ′;   
   echo ′ ′.Srow[″email″].′ ′;   
   echo ′ ′.Srow[″msgdate″].′ ′;   
   echo ′ ′.Srow[″msg″].′
′;   }   
   mysql_free_result(Sresult);//釋放資源   
   mysql_close(Sdb);//關閉資料庫   
   echo ′ ′;   ?>   
     
     
   5.管理留言本,該程式能列出所有留言條目概況,並為每個條目提供checkbox,以供選擇刪除。   Addmin.php   
   到這裡,我們已經構建了一個具備填寫、儲存、瀏覽、管理(主要是刪除操作)等功能的留言本。應該說這個程式達到了我們預期的目的。然而,一個留言本真正投入實用,必須考慮許多特殊情況,並具有良好的人機介面,和一定容錯、錯誤修正性。對比網路上成熟的留言本程式,我們還需要很多工作,這些將在下期“留言板製作進階技巧”裡介紹,就到這裡了,再見!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.