PHP PEAR/HTML/QuickForm实现用户注册表单界面

王朝php·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

用PEAR中的QuickForm实现了一个用户注册的界面,具体的操作数据库没有写。可能是我还不太熟练吧,没发现它的优点,反而不如JS,HTML直接编写来得迅速。也许它的好处就是可以控制很多吧(不是指外观)。下面的例子就实现了用户名,EMAIL地址的格式检查,证件号码等等的检查,当然这些用JS都可以轻松完成的,大家见仁见智吧。下面是最终效果图:

下面是PHP代码

<?php

/**

* QuickForm手工篇

*

* QuickForm手工输入之熟练篇

* 用QuickForm完成一个用户注册页面(包括信息的审查功能)

* @author jxyuhua at gmail.com

*/

require_once("HTML/QuickForm.php");

echo("<link rel="stylesheet" href="css.css" />");

$quickForm = new HTML_QuickForm("registerFrm");

$country = array("1" => "中国",

"2" => "日本",

"3" => "美国",

"4" => "英国",

"0" => "其它");

$city = array("1" => "北京",

"2" => "广东",

"3" => "江西",

"0" => "其它");

$industry = array("1" => "学生",

"2" => "科研机构",

"3" => "IT产业",

"0" => "其它");

$from = array("1" => "网吧",

"2" => "单位",

"3" => "家里",

"0" => "其它");

$quickForm->setDefaults(array("idtype" => 1,

"secret" => 1));

$quickForm->addElement("header", null, "新用户注册");

$quickForm->addElement("text", "name", "用户登录呢称:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("password", "pass", "密码:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("password", "repass", "重复输入密码:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("text", "email", "EMAIL地址:", array("size" => 20, "maxlength" => 50));

$quickForm->addElement("text", "passquestion", "密码提示问题:", array("size" => 50, "maxlength" => 50));

$quickForm->addElement("text", "passanswer", "密码提示答案:", array("size" => 50, "maxlength" => 50));

$quickForm->addElement("text", "alias", "用户中文呢称:", array("size" => 30, "maxlength" => 50));

$quickForm->addElement("textarea", "description", "个人描述信息:", array("rows" => 3, "cols" => 50, "class" => "textBox"));

$radio[] = &$quickForm->createElement("radio", null, null, "以下信息对不外公开", "1");

$radio[] = &$quickForm->createElement("radio", null, null, "以下信息对外公开", "0");

$quickForm->addGroup($radio, "secret");

//?如何设置默认选中为身份证?

//中转的办法,设默认值

$quickForm->addElement("text", "idnuber", "证件号码:", array("size" => 30, "maxlength" => 30));

$radio2[] = $quickForm->createElement("radio", "idtype", null, "身份证", null, array("value" => 1, "checked" => "true"));

$radio2[] = $quickForm->createElement("radio", "idtype", null, "其它证件", null, array("value" => 2));

$quickForm->addGroup($radio2);

$quickForm->addElement("text", "realname", "真实姓名:", array("size" => 20, "maxlength" => 30));

$quickForm->addElement("select", "gender", "性别:", array("male" => "男", "female" => "女"));

$quickForm->addElement("date", "born", "出生于:", array("format" => "Y 年m 月d", "minYear" => 1940, "maxYear" => 1995));

$quickForm->addElement("select", "country", "所在国家:", $country);

$quickForm->addElement("select", "city", "省(市):", $city);

$quickForm->addElement("text", "town", "市(县):", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("text", "address", "联系地址:", array("size" => 50, "maxlength" => 50));

$quickForm->addElement("text", "zipcode", "邮政编码:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("text", "phone", "联系电话:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("text", "company", "所在单位:", array("size" => 30, "maxlength" => 30));

$quickForm->addElement("text", "department", "所在部门:", array("size" => 20, "maxlength" => 20));

$quickForm->addElement("select", "industry", "所在行业:", $industry);

$quickForm->addElement("select", "source", "主要在哪里<br />访问我们的网站:", $from);

$quickForm->addElement("text", "webpage", "个人主页:", array("size" => 50, "maxlength" => 50));

$quickForm->addElement("submit", null, "注册用户");

//设定表单的规则

$quickForm->applyFilter("name", "trim");

$quickForm->addRule("name", "用户登录昵称必须填写!!", "required");

$quickForm->addRule("pass", "密码不能为空", "required");

$quickForm->addRule("email", "电子邮件EMAIL不能为空", "required");

$quickForm->addRule("passquestion", "请填写密码提示问题", "required");

$quickForm->addRule("passanswer", "请填写密码提示答案", "required");

$quickForm->addRule("idnuber", "请填写证件号码", "required");

$quickForm->addRule("realname", "请填写真实姓名", "required");

$quickForm->addRule("gender", "性别不能为空", "required");

$quickForm->addRule("born", "出生日期不能为空", "required");

$quickForm->addRule("country", "国家不能为空", "required");

$quickForm->addRule("city", "城市不能为空", "required");

$quickForm->addRule("address", "请填写你的联系地址", "required");

$quickForm->addRule("name", "用户登录呢称最少为5个字符", "minlength", 5);

$quickForm->addRule("pass", "密码太简单,不能少于5位", "minlength", 5);

$quickForm->addRule(array("pass", "repass"), "两次的密码不一致", "compare");

$quickForm->addRule("email", "请输入正确的EMAIL地址(user@domain)", "email");

$quickForm->addRule("idnuber", "证件号码不能少于5位", "minlength", 5);

$quickForm->addRule("i

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航