作者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
1F:推 ourear:你是好人....指... 08/06 05:06
2F:推 rb1979:好用心~ ^_________^ 08/06 09:15
3F:推 dontblame:真是善心人士 值得鼓掌 喝采 08/06 11:39
4F:推 JeffMcBride:不推对不起自己啊... 08/06 15:19
5F:推 wadd:善心人 08/06 16:51
6F:推 scan33scan33:不堆不行!!! 08/07 09:54
7F:推 tianlei:谢谢你!!!~~真感激^^ 08/07 11:43
8F:推 gmoz:推荐t大买本旗标出版的 视觉化 php与MySQL快速学习指南 08/07 11:46
9F:→ gmoz:有详细的范例和解说 作者本身功力也颇深 08/07 11:46
10F:→ gmoz:从档案下载上传 和会员系统都有解说 自己在多加发展应用即可 08/07 11:48