您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php中一个完整表单处理实现代码_php入门_脚本之家

2024/6/29 16:50:53发布36次查看
《php5与mysql5 web开发技术详解》第5章主要讲的是表单——处理用户输入,本小节主要讲的是一个完整表单处理。
一个完整表单处理
下面我们将创建一个复杂的表单,代码如下所示。
代码如下:
姓名:
密码:
年龄:
16>小于16
16-30
31-50
51-80
自我介绍:
请输入您的自我介绍
体育爱好:
网球
足球
篮球
保龄球
开发语言:
php
java
perl
c++
.net
delphi
开发工具:
zend studio
eclipse
editplus
ultraedit
other
该表单包括了常用表单元素:单行文本框、多行文本框、单选项(radio)、多选项(checkbox),以及多选菜单。下面进行详细的说明。
maxlength是与密码文本框关联的属性,它限制用户输入密码的最大长度为10个字符。
age列表框是列表菜单,它的命名属性下都有自己的值供选择。selected是一个特定的属性选择元素,如果某个option附加有该属性,在显示时就把该项列为第一项显示。
intro文本框中的内容,按照rows和cols显示文字、行和列宽。
fave_sport是一组单选按钮(radio),我们要按组命名元素名称,比如这一组单选按钮都叫做fave_sport,用户只可选择一个,发送脚本端也只存在一个值。
和单选项一样,所有多选项成员也须有同名的属性,而属性名称需要添加括号[],这样就把多选项的值以数组形式发送给php,languages就是这种形式。
checked标签是指单选项和多选项中的某个值,默认已经被选择。
上面表单的显示画面如图5-3所示。
因为上面html中的form表单使用的是post方法传递数据,所以用户提交的数据会保存到$_post或$_request的超级全局数组中,我们根据$_post数组中的值就可以处理提交的数据。
将上面表单中数据提交到someform.php脚本,该脚本的处理逻辑如下:
代码如下:
//通过判断按钮的变量名是否在$_post中定义,如果有表示该表单已提交
if(isset($_post[btn_submit])){
if (empty($_post['username'])){
echo 您没有输入用户名;
exit(0);
}
if (empty($_post['password'])){
echo 您没有输入密码: ;
exit(0);
}
echo 您的用户名: .$_post['user_name'].
;
echo 您的密码(明文): .$_post['password'].
;
echo 您的年龄: .$_post['age'].
;
if (!empty($_post['languages'])){
echo 您选择的语言为:;
//处理用户选择兴趣的checkbox按钮产生的数组
foreach ($_post['languages'] as $lang){
echo $lang. ;
}
} else {
echo 您没有输入任何兴趣爱好;
}
if (!empty($_post['develop_ide'])){
echo 您使用的开发工具为:;
//处理用户多选开发工具菜单产生的数组
foreach ($_post['develop_ide'] as $ide){
echo $ide. ;
}
} else {
echo 您没有选择开发工具;
}
echo 您的自我介绍: .nl2br($_post['intro']).
;//nl2br(),在字符串中的每个新行 (\n) 之前插入 html 换行符 (
)
;
echo 网页隐藏值(通过hidden标签值传递): .$_post['from'].
;
}
?>
说明:使用post方式提交表单,通过http协议的header部分传递表单数据,理论上数据的大小无上限。不过,在使用php进行post提交时,文件大小受php配置文件(php.ini)限制,我们可以修改php.ini文件中的post_max_size参数,可将默认的2m字节,修改为自己需要的大小,但由于http协议的特性,这个值不宜设置过大,最大以8m为宜。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product