程式碼:
<?php /* 檔名:Guestbook.php 定義 Guestbook 類別 */
// 藉由含括子系統的設定檔,取得網站及子系統的各種設定
include_once('app_config.php');
// 含括父類別 db.php
include_once(INCLUDE_DIR.'db.php');
class Guestbook extends DB{
// 定義屬性
/ 通常可以用所要存取的資料表的各個欄位,作為這個類別的屬性
var $id;
var $name;
var $email;
var $web;
var $content;
var $post_time;
var $fk_icon;
// 類別的建構方法
function Guestbook(){
$this->DB();
}
// setProperties 方法用來連接表單的欄位以及類別的屬性
function setProperties(){
$this->id = $_POST[id];
$this->name = $_POST[name];
$this->email = $_POST[email];
$this->web = $_POST[web];
$this->content = $_POST[content];
}
// setSQL 方法定義存取資料表所需的各個 SQL 命令
function setSQL(){
$this->add_sql = 'INSERT INTO Guestbook ";
$this->add_sql .= "(name, email, web, content, post_time) ';
$this->add_sql .= "VALUES('$this->name','$this->email','$this->web',";
$this->add_sql .= "'$this->content',NOW())";
$this->update_sql = "UPDATE Guestbook SET name='$this->name', ";
$this->update_sql .= "email='$this->email', web='$this->web', ";
$this->update_sql .= "content='$this->content' WHERE id=$this->id";
$this->delete_sql = "DELETE FROM Guestbook WHERE id=$this->id";
$this->select_sql = "SELECT * FROM Guestbook ORDER BY post_time DESC";
$this->retrieve_sql = "SELECT * FROM Guestbook WHERE id=$this->id";
}
// isDataValid 方法驗證表單的資料是否有效 function isDataValid(){ if(strlen(trim($this->name)) == 0){ $this->error.= '姓名欄位不可以是空白<br/>'; } if(strlen($this->name) > 12){ $this->error .= '姓名不可以超過 12 個字元 <br/>'; } if(strlen(trim($this->content)) == 0){ $this->error.= '留言內容欄位不可以是空白<br/>'; } if(strlen($this->content) > 2048){ $this->error .= '留言內容不可以超過 2048 個字元 <br/>'; } return strlen($this->error) == 0; }
// 將物件的屬性轉換成一個關連式陣列。
function getProperties(){
return array(
"name" => $this->name,
"email" => $this->email,
"web" => $this->web,
"content" => $this->content
);
}
}
?>
|