作者cleanwind (骨傲風清(掛網))
看板PHP
標題Re: [請益] 報名系統???
時間Sat Aug 4 01:42:19 2007
※ 引述《tianlei (FIN)》之銘言:
: 最近要做個網頁必須要有報名系統
: 但是之前未嘗試過這一類的
: 頂多用html 或dreamwaver 設計過
: 所以對報名系統蠻傷腦筋的
: 不知道有沒有高手願意教導如何做線上報名這種東西呢
: 麻煩各位囉!!~
如果說要"教"我著實不敢當,
畢竟很怕自己也是其它板文中題到的"半吊子設計師" XD
只能稍微提供你我從寫案子獲得的幾個方向而已。
1.你要做前端的顯示頁面,讓使用者可以填報名表。
這部分使用 html 即可完成。
2.後端的處理程式,我這邊以PHP並要獲得<input name="name"...>作舉例:
(1) 獲得前端頁面使用者填的資料:$_POST['name'] $_GET['name']
$_POST和$_GET的關連,在於<form method="POST/GET" ...>
建議使用POST,因為POST沒有資料量的限制。
或許你有使用全域變數,可以直接使用 $name,
但是還是建議使用上面這種方法,因為這可以確保所有server都能使用;
那接著要注意的就是,盡量不要使用 $name 這變數做為其他用途,
因為很有可能會發生在程式碼寫很多後,一不小心被莫名其妙的取代掉...
(2) 接著要注意:"許功蓋..."etc 這三個以上的字原是會有跳脫字元"\"出現的,
如果沒有處理好,很有可能你所有的資料通通會變成亂碼 ...
所以請使用 $name=stripcslashes($_POST['name'])來處理。
(3) 有些人很無聊,會使用JavaScript來攻擊你,為了避免這項問題,
使用 $name=htmlspecialchars($name,ENT_QUOTES); 來轉換html。
(4) 如果你的資料裡面有<textarea ... >則你會需要將\r\n轉換成<br />
可以使用:nl2br,str_replace兩個函式。
(5) 資料記錄可以分兩種:
(1) 純文字檔:
純文字檔就配合 touch, fopen, fwrite, fclose 這三個函式使用。
touch(filename)原本是用來更改檔案建立時間,不過可用來建立檔案。
$fid=@fopen(filename,w);這是表示你要寫入filename這個檔案。
通常檔案不存在時,fopen會自動建立一個檔案,不過可能會出錯,
則可以加"@",表示如果程式碼有錯,並不會顯示出來。
fwrite($fid,"$name.../*要寫入的資料內容*/");
fvlose($fid);關閉這個檔案。
(2) 資料庫:
資料庫這部份我不敢說很熟,大概是這樣的:
$mysqlID=@mysql_connect(DBserver,DBuser,DBpass);
$result=@mysql_select_db(DBname,$mysqlID);
@mysql_query("SET NAMES 'big5'",$mysqlID);//指定所有編碼都是Big5
@mysql_query("INSERT INTO `DBTable` (`NAME`) VALUES('$name')");
mysql_connect 連接資料庫;
mysql_select_db 選擇資料庫;
mysql_query 對資料庫送出指令,如果資料庫回傳沒有選擇資料庫,
可以改用 mysql_db_query()。
//mysql_query("INSERT INTO `DBTable` (`NAME`) VALUES('$name')");
將資料新增至 DBTable 內,`NAME` 是資料欄位。
(6) 如果你要寄信,可以使用 mail 函式。
mail('地址','標題','內容');
==============================================================================
聽說 PTT 硬碟掛了,先寫到這。
後面的編輯、讀取晚點再寫。
我寫這些沒有參照任何資料,有錯還請高手指正。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.117.205.177
推 ourear:你是好人....指... 08/06 05:06
推 rb1979:好用心~ ^_________^ 08/06 09:15
推 dontblame:真是善心人士 值得鼓掌 喝采 08/06 11:39
推 JeffMcBride:不推對不起自己啊... 08/06 15:19
推 wadd:善心人 08/06 16:51
推 scan33scan33:不堆不行!!! 08/07 09:54
推 tianlei:謝謝你!!!~~真感激^^ 08/07 11:43
推 gmoz:推薦t大買本旗標出版的 視覺化 php與MySQL快速學習指南 08/07 11:46
→ gmoz:有詳細的範例和解說 作者本身功力也頗深 08/07 11:46
→ gmoz:從檔案下載上傳 和會員系統都有解說 自己在多加發展應用即可 08/07 11:48