又开始发发之前的内容,挺简单的内容,想想我之前就算这样过来的。
表单生成与访问页面
<?php
/* 输入框表单 */
header("Content-Type: text/html; charset=utf-8"); //html内容
?>
<html>
<head><title>输入框表单演示</title></head>
<body>
<form action="form/input.php" method="get">
<p>表单一,GET请求</p>
输入任意ID:<input type="text" name="id" value="" /><br /><!--type指明输入框的类型,name指定输入框的名字,会提交到服务器,value指的是默认值-->
<input type="submit" name="submit" value="提交表单(input)" /><!--这里将type改变为submit,就变为一个按钮,等效于button,但这里使用了name元素,会导致该值被提交过去-->
<button type="submit">提交表单(button)</button>
<p>分析:当使用input提交表单时,$_GET数组中会产生submit这个元素,<br />而使用button提交不会产生submit,说明input标签中的button只有在点击提交时有效</p>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php" method="post">
<p>表单二,POST请求</p>
用户名:<input name="username" />此处省略type和value的选项,因为type="text"是默认值<br/>
密码:<input name="pwd" type="password" />使用tyep="password"会使用输入框成为一个密码框<br>
爱好:<input name="interesting" type="text" value="没有?" />建议将每个type都勾选上,value表示默认值<br>
<button type="reset">重置(button)</button><!--这里的重置加上type="reset"即可,同时button和input都适合-->
<input type="reset" value="重置(button)" />
<button type="submit">提交</button>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php" method="post">
<p>表单三,POST数组</p>
昵称一:<input name="name[]" type="text" value="" />将name设置为name[]数组的形式<br>
昵称二:<input name="name[]" type="text" value="" /><br>
昵称三:<input name="name[]" type="text" value="" /><br>
昵称四:<input name="name[]" type="text" value="" /><br>
爱好a一:<input name="in[a][]" type="text" value="" />同样可以将name设置为多维数组的形式in[a][]<br>
爱好a二:<input name="in[a][]" type="text" value="" /><br>
爱好b一:<input name="in[b][]" type="text" value="" /><br>
<button type="submit">提交查看</button>
<p>这种方式可以发现$_POST['name']同样是一个数组,这属于PHP自身对其进行了解析</p>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php?name=OK" method="post">
<p>表单四,同时POST和GET</p>
任意字符:<input name="any" value="?" type="text" />
<button type="submit">提交</button>
</form>
</body>
</html>
/* 输入框表单 */
header("Content-Type: text/html; charset=utf-8"); //html内容
?>
<html>
<head><title>输入框表单演示</title></head>
<body>
<form action="form/input.php" method="get">
<p>表单一,GET请求</p>
输入任意ID:<input type="text" name="id" value="" /><br /><!--type指明输入框的类型,name指定输入框的名字,会提交到服务器,value指的是默认值-->
<input type="submit" name="submit" value="提交表单(input)" /><!--这里将type改变为submit,就变为一个按钮,等效于button,但这里使用了name元素,会导致该值被提交过去-->
<button type="submit">提交表单(button)</button>
<p>分析:当使用input提交表单时,$_GET数组中会产生submit这个元素,<br />而使用button提交不会产生submit,说明input标签中的button只有在点击提交时有效</p>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php" method="post">
<p>表单二,POST请求</p>
用户名:<input name="username" />此处省略type和value的选项,因为type="text"是默认值<br/>
密码:<input name="pwd" type="password" />使用tyep="password"会使用输入框成为一个密码框<br>
爱好:<input name="interesting" type="text" value="没有?" />建议将每个type都勾选上,value表示默认值<br>
<button type="reset">重置(button)</button><!--这里的重置加上type="reset"即可,同时button和input都适合-->
<input type="reset" value="重置(button)" />
<button type="submit">提交</button>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php" method="post">
<p>表单三,POST数组</p>
昵称一:<input name="name[]" type="text" value="" />将name设置为name[]数组的形式<br>
昵称二:<input name="name[]" type="text" value="" /><br>
昵称三:<input name="name[]" type="text" value="" /><br>
昵称四:<input name="name[]" type="text" value="" /><br>
爱好a一:<input name="in[a][]" type="text" value="" />同样可以将name设置为多维数组的形式in[a][]<br>
爱好a二:<input name="in[a][]" type="text" value="" /><br>
爱好b一:<input name="in[b][]" type="text" value="" /><br>
<button type="submit">提交查看</button>
<p>这种方式可以发现$_POST['name']同样是一个数组,这属于PHP自身对其进行了解析</p>
</form>
<hr /><!--华丽的分割线-->
<form action="form/input.php?name=OK" method="post">
<p>表单四,同时POST和GET</p>
任意字符:<input name="any" value="?" type="text" />
<button type="submit">提交</button>
</form>
</body>
</html>
输入框表单请求页面 file:form/input.php
<?php
/* 输入框表单请求页面 */
header("Content-Type: text/plain; charset=utf-8");
print_r($_SERVER); //可以打印出所有的系统信息数组
echo "\n当前表单请求模式为[REQUEST_METHOD]:",$method=$_SERVER['REQUEST_METHOD'],"\n"; //这个表示当前请求为什么类型,如GET,POST
echo "\n普通的表单提交会存放在两个数组当中:\$_GET,\$_POST,获取值只是对去取出对应的值\n";
if($method == "GET"){ //判断是否为GET请求
echo "\n\n当前GET参数列表为print_r(\$_GET):\n";
print_r($_GET); //$_GET该数组存储了全部GET请求的参数列表
}
if($method == "POST"){ //判断是否为POST
echo "\n\n当前POST参数列表为print_r(\$_POST):\n";
print_r($_POST);
if(!empty($_GET)){
//判断$_GET数组是否为空
echo "当前为POST请求,\$_GET数组非空为print_r(\$_GET):\n";
print_r($_GET);
}
}
?>
/* 输入框表单请求页面 */
header("Content-Type: text/plain; charset=utf-8");
print_r($_SERVER); //可以打印出所有的系统信息数组
echo "\n当前表单请求模式为[REQUEST_METHOD]:",$method=$_SERVER['REQUEST_METHOD'],"\n"; //这个表示当前请求为什么类型,如GET,POST
echo "\n普通的表单提交会存放在两个数组当中:\$_GET,\$_POST,获取值只是对去取出对应的值\n";
if($method == "GET"){ //判断是否为GET请求
echo "\n\n当前GET参数列表为print_r(\$_GET):\n";
print_r($_GET); //$_GET该数组存储了全部GET请求的参数列表
}
if($method == "POST"){ //判断是否为POST
echo "\n\n当前POST参数列表为print_r(\$_POST):\n";
print_r($_POST);
if(!empty($_GET)){
//判断$_GET数组是否为空
echo "当前为POST请求,\$_GET数组非空为print_r(\$_GET):\n";
print_r($_GET);
}
}
?>
典型的登录表单,服务器端验证
<?php
/* 登录表单,服务器端验证 */
//header("Content-Type: text/html; charset=utf-8"); //注释掉该行,直接使用html标签指定页面编码
?>
<html xmlns="http://www.w3.org/1999/html">
<head>
<title>登录表单,服务器验证</title>
<meta http-equiv="content-type" content="text/html" charset="utf-8" />
</head>
<body>
<h2>登录表单</h2>
<form action="form/login_form.php" method="post">
<p><label>用户名:<input name="username" type="text" value="" /></label></p
<p><label>密码:<input name="password" type="password" value="" /></label></p>
<p><label><input name="remember1" type="checkbox" checked="true" />记住我1(不指定value)</label>可发现存在默认值on,checked表示是否勾选</p>
<p><label><input name="remember2" type="checkbox" value="ok" />记住我2(指定value为ok)</label></p>
<p><button type="submit">登录</button></p>
</form>
</body>
</html>
/* 登录表单,服务器端验证 */
//header("Content-Type: text/html; charset=utf-8"); //注释掉该行,直接使用html标签指定页面编码
?>
<html xmlns="http://www.w3.org/1999/html">
<head>
<title>登录表单,服务器验证</title>
<meta http-equiv="content-type" content="text/html" charset="utf-8" />
</head>
<body>
<h2>登录表单</h2>
<form action="form/login_form.php" method="post">
<p><label>用户名:<input name="username" type="text" value="" /></label></p
<p><label>密码:<input name="password" type="password" value="" /></label></p>
<p><label><input name="remember1" type="checkbox" checked="true" />记住我1(不指定value)</label>可发现存在默认值on,checked表示是否勾选</p>
<p><label><input name="remember2" type="checkbox" value="ok" />记住我2(指定value为ok)</label></p>
<p><button type="submit">登录</button></p>
</form>
</body>
</html>
登录表单请求页面 file:form/login_form.php
<?php
/* 登录表单请求页面 */
header("Content-Type: text/plain; charset=utf-8");
echo "登录使用POST请求模式,打印\$_POST数组:\n";
print_r($_POST);
if ($_SERVER['REQUEST_METHOD'] != "POST") {
echo "当前不是POST登录请求模式\n";
die("网页到此结束\n"); //die()函数结束当前程序执行,并输出参数
}
echo "\n开始进行登录参数分析:\n";
if (isset($_POST['username'])) {
if ($_POST['username'] !== "") //进行全等匹配,否则如果提交一个0会同样匹配
echo "用户名为:" . $_POST['username'];
else
echo "用户名为空";
} else
echo "未提交用户名参数";
echo "\n\n";
if(isset($_POST['password'])){
if(strlen($_POST['password']) <6)
echo "密码长度不符,至少六位,当前密码为:".$_POST['password'];
else
echo "密码为(此处可能包含空格等):".$_POST['password'];
}else
echo "未提交密码";
echo "\n\n";
if(isset($_POST['remember1'])){
echo "记住密码1选项被勾选,且值为:".$_POST['remember1'];
}else
echo "记住密码1选项未被勾选";
echo "\n\n";
if(isset($_POST['remember2'])){
echo "记住密码2选项被勾选,且值为:".$_POST['remember2'];
}else
echo "记住密码2选项未被勾选";
?>
/* 登录表单请求页面 */
header("Content-Type: text/plain; charset=utf-8");
echo "登录使用POST请求模式,打印\$_POST数组:\n";
print_r($_POST);
if ($_SERVER['REQUEST_METHOD'] != "POST") {
echo "当前不是POST登录请求模式\n";
die("网页到此结束\n"); //die()函数结束当前程序执行,并输出参数
}
echo "\n开始进行登录参数分析:\n";
if (isset($_POST['username'])) {
if ($_POST['username'] !== "") //进行全等匹配,否则如果提交一个0会同样匹配
echo "用户名为:" . $_POST['username'];
else
echo "用户名为空";
} else
echo "未提交用户名参数";
echo "\n\n";
if(isset($_POST['password'])){
if(strlen($_POST['password']) <6)
echo "密码长度不符,至少六位,当前密码为:".$_POST['password'];
else
echo "密码为(此处可能包含空格等):".$_POST['password'];
}else
echo "未提交密码";
echo "\n\n";
if(isset($_POST['remember1'])){
echo "记住密码1选项被勾选,且值为:".$_POST['remember1'];
}else
echo "记住密码1选项未被勾选";
echo "\n\n";
if(isset($_POST['remember2'])){
echo "记住密码2选项被勾选,且值为:".$_POST['remember2'];
}else
echo "记住密码2选项未被勾选";
?>
不区分GET和POST的表单请求
<?php /* 不区分GET和POST的表单请求 */ ?>
<html>
<head>
<title>不区分GET和POST的表单请求</title>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />
</head>
<body>
<p>GET表单:</p>
<form action="form/request_form.php" method="get">
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>POST表单:</p>
<form action="form/request_form.php" method="post">
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>混合表单:</p>
<form action="form/request_form.php?time=<?php echo time();?>" method="post">
<!--这里使用php标签调用了一个time()函数输出一个时间戳,可以表示当前的时间-->
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>混合重复表单:</p>
<form action="form/request_form.php?time=<?php echo time();?>" method="post">
<!--这里使用php标签调用了一个time()函数输出一个时间戳,可以表示当前的时间-->
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><label>时间:<input name="time" type="text" value="<?=@date("Y-m-d H:i:s");?>" /></label></p>
<!--这里默认会弹出一个警告,在于没有设置时区,因此需要将错误屏蔽,使用@符号即可,或者在之前设置时区-->
<p><input type="submit" value="确定" /></p>
</form>
</body>
</html>
<html>
<head>
<title>不区分GET和POST的表单请求</title>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />
</head>
<body>
<p>GET表单:</p>
<form action="form/request_form.php" method="get">
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>POST表单:</p>
<form action="form/request_form.php" method="post">
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>混合表单:</p>
<form action="form/request_form.php?time=<?php echo time();?>" method="post">
<!--这里使用php标签调用了一个time()函数输出一个时间戳,可以表示当前的时间-->
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><input type="submit" value="确定" /></p>
</form>
<hr />
<p>混合重复表单:</p>
<form action="form/request_form.php?time=<?php echo time();?>" method="post">
<!--这里使用php标签调用了一个time()函数输出一个时间戳,可以表示当前的时间-->
<p><label>姓名:<input name="name" type="text" value="" /></label></p>
<p><label>电话:<input name="tel" type="text" value="" /></label></p>
<p><label>时间:<input name="time" type="text" value="<?=@date("Y-m-d H:i:s");?>" /></label></p>
<!--这里默认会弹出一个警告,在于没有设置时区,因此需要将错误屏蔽,使用@符号即可,或者在之前设置时区-->
<p><input type="submit" value="确定" /></p>
</form>
</body>
</html>
REQUEST 表单请求页面 file:form/request_form.php
这算是继续发无聊额存档,有关于PHP表单的,回头看这是好简单的东西,却不知在以前是怎么慢慢磨过来的,还记得自己傻傻分不清POST和GET的时候,也无聊的想起当时用手机写代码的乐趣。
我也在学习呢
话说我也在学php
加油努力吧
话说我以前也是学程序的
不知在哪高就啊
前來支持一下~~雖然早就會了~還是學習啦~
额额,不知灵通到什么地步