只用一个PHP文件实现提交表单及输出
好吧这是我上次布置的作业,为了收尾就写篇教程+w+,其实我还是觉得没什么好写的。
题目也就是做个和演示差不多一个意思的了,给的提示应该是很充分的,包括各种函数都有。
在PHP 检查表单是否提交的两种方法中提到了如何检测提交,利用这个方法我们就可以节省一个HTML文件了。
$_POST
是一个数组(超全局变量),如果页面的请求方式是POST
,在这个数组里就会存上相应的内容,可以看W3School中关于这个的介绍:http://www.w3school.com.cn/php/php_post.asp
empty()
函数以前有讲过,可以去PHP官方手册看一下:http://cn2.php.net/manual/en/function.empty.php
还有一个isset()
的区别:http://codesky.me/archives/php-empty-isset.wind
然后基本上就很易懂了
源码:
1<!DOCTYPE html>
2<html>
3<head>
4 <meta charset="utf-8">
5 <title>注册系统</title>
6</head>
7<body>
8
9 <?php
10 if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
11 ?>
12 <h2>注册</h2>
13 <form action="form-post.php" method="post">
14 用户名:<input type="text" name="username"><br/>
15 密码<input type="password" name="password"><br/>
16 <input type="checkbox" name="agree">同意许可协议<br/>
17 <input type="submit" name="submit" value="提交">
18 </form>
19 <?php
20 } else {
21 $problem = FALSE;
22 if (empty($_POST['username'])) {
23 echo '请输入用户名<br/>';
24 $problem = TRUE;
25 }
26
27 if (empty($_POST['password'])) {
28 echo '请输入密码<br/>';
29 $problem = TRUE;
30 }
31
32 if (empty($_POST['agree'])) {
33 echo '您必须先同意许可协议<br/>';
34 $problem = TRUE;
35 }
36
37 if (!$problem) {
38 echo '<h2>注册成功</h2>';
39 echo '欢迎' . $_POST['username'] . '你已成功注册,你的密码是' . $_POST['password'];
40 }
41 }
42 ?>
43</body>
44</html>
45
评论 (0)