表单
创建表单
使用<from>标记,并在其中插入相关的表单元素,即可创建表单
<form name="form_name" method="method" action="url" enctype="value" target="target_win">
… //省略插入的表单元素
</form >

表单元素
- 输入域标记
<input>
输入域标记<input>是表单中最常用的标记之一。常用的文本框、按钮、单选按钮、复选框等构成了一个完整的表单。
语法格式如下:
<form>
<input name="file_name" type="type_name">
</form>
参数name是指输入域的名称,参数type是指输入域的类型
提供了10种类型的输入区域


- 选择域标记
<select>和<option>
<select name="name" size="value" multiple>
<option value="value" selected>选项1</option>
<option value="value">选项2</option>
<option value="value">选项3</option>
…
</select>

菜单模式就是在<select>里面加上multiple

列表模式就是在<select>里面不加multiple

- 文字域标记
<textarea>
文字域标记<textarea>用来制作多行的文字域,可以在其中输入更多的文本
<textarea name="name" rows=value cols=value value="value" warp="value">
…文本内容
</textarea>
name表示文字域的名称;
rows表示文字域的行数;
cols表示文字域的列数(这里的rows和cols以字符为单位);
value表示文字域的默认值
warp用于设定显示和送出时的换行方式,值为off表示不自动换行,值为hard表示自动硬回车换行,换行标记一同被发送到服务器,输出时也会换行,值为soft表示自动软回车换行,换行标记不会被发送到服务器,输出时仍然为一列。
获取表单数据
有两种方式POST和GET
POST
应用POST方法时,只需将表单中的属性method设置成POST即可。POST方法不依赖于URL,不会显示在地址栏。POST方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器端是看不到这一过程的,安全性高。所以POST方法比较适合用于发送一个保密的(如信用卡号)或者容量较大的数据到服务器。

GET
GET方法是表单中method属性的默认方法。使用GET方法提交的表单数据被附加到URL后,并作为URL的一部分发送到服务器端
GET方法的传参格式如下:
http://url?name1=value1&name2=value2……
url和表单元素之间用“?”隔开,而多个表单元素之间用“&”隔开,每个表单元素的格式都是name=value,固定不变。


这个方式提交参数会把参数暴露,不适合做账号密码提交
PHP的传参方式
$_POST[]全局变量
建立一个表单,设置method属性为POST,添加一个文本框,命名为user,获取表单元素的代码如下:
<?php
$user=$_POST["user"]; //应用$_POST[]全局变量获取表单元素中文本框的值
?>

isset($_POST["submit"]这句话是判断变量是否存在,当按下按钮以后他就存在了,$_POST["submit"]=="提交"是判断这个按钮的值(value)是不是“提交”
$_GET[]全局变量
建立一个表单,设置method属性为GET,添加一个文本框,命名为user,获取表单元素的代码如下:
<?php
$user=$_GET["user"]; //应用$_GET[]全局变量获取表单元素中文本框的值
?>
$_SESSION[]变量
建立一个表单,添加一个文本框,命名为user,获取表单元素的代码如下:
$user=$_SESSION["user"]
使用$_SESSION[]传参的方法获取的变量值,保存之后任何页面都可以使用。但这种方法很耗费系统资源,慎重使用。
在web中嵌入php脚本
在HTML标记中添加PHP脚本
在Web编码过程中,可以随时添加PHP脚本标记<?php ?>,两个标记之间的所有文本都会被解释成为PHP,而标记之外的任何文本都会被认为是普通的HTML。
对表单元素的value属性进行赋值
例如,为表单元素隐藏域进行赋值,只需要将所赋的值添加到value属性后即可,代码如下:
<?php
$hidden="yg0025"; //为变量$hidden赋值
?>
隐藏域的值 :<input type="hidden" name="ID" value="<?php echo $hidden;?>" >
首先为变量hidden赋予一个初始值,然后将变量hidden赋予一个初始值,然后将变量hidden赋予一个初始值,然后将变量hidden的值赋给隐藏域。
在PHP中获取表单元素
获取文本框、密码域、隐藏域、按钮、文本域的值
在程序开发过程中,获取文本框、密码域、隐 藏域、按钮以及文本域的值的方法是相同的,都是使用name属性来获取相应的value属性值。
例子就像上面的那个一样
<body>
<form name="form1" method="post" action="">
<table width="509" border="0">
<tr>
<td>账号</td>
<td><input type="text" name="user" size="20" ></td>
<td> 密码</td>
<td><input name="pwd" type="password" id="pwd" size="20" ></td>
<td><input name="submit" type="submit" id="submit" value="提交" /></td>
</tr>
</table>
</form>
<?php
if(isset($_POST["submit"]) && $_POST["submit"]=="提交"){
echo "账号".$_POST['user']." 密码".$_POST['pwd'];
}
?>
</body>
获取单选按钮的值

获取复选框的值
复选框一般都是多个同时存在,为了便于传值,name的名字可以是一个数组形式,格式为:
<input type="checkbox" name="chkbox[]" value="chkbox1">
可以使用count()函数计算数组的大小,结合for循环语句输出选择的复选框的值。
可以通过下面例子理解:
<body>
<form name="form1" method="post" action="">
<table width="500" cellpadding="0" cellspacing="0">
<tr>
<td width="400" height="25" align="center" valign="top">
你喜欢的图书类型
<input type="checkbox" name="mrbook[]" value="入门类">
入门类
<input type="checkbox" name="mrbook[]" value="案例类">
案例类
<input type="checkbox" name="mrbook[]" value="讲解类">
讲解类
<input type="checkbox" name="mrbook[]" value="典型实例类">
实例类
</td>
<td width="40" align="center" valign="top"><input type="submit" name="submit" value="提交"></td>
</tr>
</table>
</form>
<?php
if(isset($_POST['mrbook']) && $_POST['mrbook']!=""){
echo "你选择的结果是:";
for($i = 0;$i<count($_POST['mrbook']);$i++)
echo $_POST['mrbook'][$i]." ";
}
?>
</body>

获取下拉列表框/菜单列表框的值
1.获取下拉列表框的值
获取下拉列表框的值的方法非常简单,与获取文本框的值类似,首先需要定义下拉列表框的name属性值,然后应用$_POST[]全局变量进行获取。
<body>
<form name="form1" method="post" action="">
<table width="280" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="80" height="25" align="center"><span class="style2">abcde:</span></td>
<td width="194">
<select name="select" size="1">
<option value="aaa" selected>aaa</option>
<option value="bbb">bbb</option>
<option value="ccc">ccc</option>
<option value="ddd">ddd</option>
</select>
<input type="submit" name="submit" value="提交"></td>
</tr>
</table>
</form>
<?php
if(isset($_POST['submit']) && $_POST['submit']=="提交"){
echo "结果:".$_POST['select'];
}
?>
</body>
2.获取菜单列表框的值
当标记设置了multiple属性,则为菜单列表框,可以选择多个条件。由于菜单列表框一般都是多个值同时存在,为了便于传值,标记的命名通常采用数组形式,格式为:
在返回页面可以使用count()函数计算数组的大小,结合for循环语句输出选择的菜单项。
<body>
<form name="form1" method="post" action="">
<table width="423" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="231" height="30" align="left" valign="middle"> 请选择:</td>
<td width="192" align="center" valign="middle"> </td>
</tr>
<tr>
<td align="center" valign="middle"><select name="select[]" size="5" multiple>
<option value="000">000</option>
<option value="111">111</option>
<option value="222">222</option>
<option value="333">333</option>
<option value="444">444</option>
<option value="555">555</option>
</select></td>
<td align="left" valign="middle"><input type="submit" name="Submit" value="提交"></td>
</tr>
<tr>
<td height="30" colspan="2" align="left" valign="middle"> </td>
</tr>
</table>
</form>
</body>
<?php
if(isset($_POST['select']) && $_POST['select'] != ""){
echo "你的选择是:";
for($i = 0; $i < count($_POST['select']); $i++)
echo $_POST['select'][$i]."  ";
}
?>
获取文件域的值
文件域的作用是实现文件或图片的上传。文件域有一个特有的属性accept,用于指定上传的文件类型,如果需要限制上传文件的类型,则可以通过设置该属性完成。
<body>
<form name="form1" method="post" action="">
<input type="file" name="file" size="15">
<input type="submit" name="upload" value="上传">
</form>
<?php
if(isset($_POST['file']) && $_POST['file']!=""){
echo $_POST['file'];
}
?>
</body>
本文详细介绍了如何在PHP中创建和处理表单,包括使用POST和GET方法传递数据,以及通过$_POST[], $_GET[], 和$_SESSION[]全局变量获取表单数据。还讨论了在HTML中嵌入PHP脚本,以及如何处理不同类型的表单元素如文本框、复选框、单选按钮、下拉列表和文件域的值。"
56278494,783974,解决UnicodeDecodeError:'ascii' codec无法解码字节,"['Python', 'Django', 'PyCharm', '错误解决', '编码']
1775

被折叠的 条评论
为什么被折叠?



