这里有新鲜出炉的PHP面向对象编程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于web开发领域。PHP的文件后缀名为php。
这篇文章主要给大家介绍了利用PHP实现一个简单的用户登记表的相关资料,文中分别介绍了如何展示单行和多行信息表的实现方法,分别给出了详细的示例代码,需要的朋友可以参考简介,下面来一起看看吧。
一、展示单行的用户信息表
首先我们需要创建两个文件,一个为html文件,一个为php文件。
这里博主就创建了form.html和formHandle.php两个文件。
下面展示一下两个文件的内容:
form.html的文件内容:
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title></title>
- </head>
- <body>
- <form action="test.php" method="get">
- 用户名:<input type="text" name="user" value="" /><br/>
- 密码:<input type="password" name="pass" value="" /><br/>
- 性别:<input type="radio" name="sex" value="0" />男
- <input type="radio" name="sex" value="1" />女<br/>
- 兴趣:<input type="checkbox" name="hobby[]" value="0" />写代码
- <input type="checkbox" name="hobby[]" value="1" />修改代码
- <input type="checkbox" name="hobby[]" value="2" />上传代码<br/>
- 城市:<select name="city">
- <option value="0">上海</option>
- <option value="1">杭州</option>
- </select><br/>
- 简介:<textarea name="intro"></textarea><br/>
- <input type="submit" value="提交"/>
- </form>
- </body>
- </html>
效果展示:
这里要注意的是:类似性别,兴趣,城市这三类我们可以用value数值传入0,1,2来代表用户分别选的不同的选项。
兴趣部分,因为是多选,所以我们需要传入一个数组来方便我们展示,所有name属性写的是hobby[]来记录。
formHandle.php的文件内容:
- <?php
- $inf = $_GET;
- ?>
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <title>Document</title>
- </head>
- <body>
- <table border="1">
- <tr>
- <td>用户名</td>
- <td>密码</td>
- <td>性别</td>
- <td>兴趣</td>
- <td>城市</td>
- <td>简介</td>
- </tr>
- <tr>
- <td><?php echo $inf["user"] ?></td>
- <td><?php echo $inf["pass"] ?></td>
- <td><?php
- $sexArr = array("男","女");
- echo $sexArr[$inf["sex"]];
- ?>
- </td>
- <td><?php
- $hobbyArr = array("写代码","修改代码","上传代码");
- foreach ($inf["hobby"] as $value) {
- echo $hobbyArr[$value]." ";
- }
- ?>
- </td>
- <td><?php
- $cityArr = array("上海","杭州");
- echo $cityArr[$inf["city"]];
- ?>
- </td>
- <td><?php echo $inf["intro"] ?></td>
- </tr>
- </table>
- </body>
- </html>
接下来我们来测试一下:
最终效果为:
这里要提问一个问题,以上方法每次只能够保存一个用户的信息,如果想展示多行的用户信息该怎么办呢?
二、展示多行的用户信息表
有经验的后台人士就会说了这时候就需要一个数据库来存入信息了,这里由于博主也是刚学PHP,就用txt文件来代替一下数据库了。
这里form.html中的
- <form action="test2.php" method="get">
然后建立一个text2.php文件,再建立一个存储用户信息的userinfo.txt和相对应做操作的userinfo.php两个文件,一共三个文件。
text2.php的文件内容:
- <?php
- $str = json_encode($_GET);
- $fh = fopen("userinfo.txt", "a");
- fwrite($fh, $str."\n");
- fclose($fh);
- ?>
这里面由于用户提交到后台的信息为数组所以需要转换成json类型的字符串,用到了
的方法,再把用户提交的个人信息保存到userinfo.txt的文件中。
- json_encode();
userinfo.php的文件内容:
- <?php
- // 用户信息的展示页 (把信息存文件里读取出来)
- $fh = fopen("userinfo.txt", "r");
- ?>
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <title>Document</title>
- </head>
- <body>
- <table border="1">
- <tr>
- <td>用户名</td>
- <td>密码</td>
- <td>性别</td>
- <td>爱好</td>
- <td>城市</td>
- <td>简介</td>
- </tr>
- <?php
- while ($info = fgets($fh)) {
- $info = (array)json_decode($info);
- ?>
- <tr>
- <td><?php echo $info["user"]; ?></td>
- <td><?php echo $info["pass"]; ?></td>
- <td><?php
- $sexArr = array("男", "女");
- echo $sexArr[$info["sex"]];
- ?></td>
- <td><?php
- $loveArr = array("听音乐", "看书", "打球");
- foreach ($info["love"] as $value) {
- echo $loveArr[$value];
- }
- ?></td>
- <td><?php
- $cityArr = array("北京", "上海", "广州");
- echo $cityArr[$info["city"]];
- ?></td>
- <td><?php echo $info["intro"]; ?></td>
- </tr>
- <?php
- }
- ?>
- </table>
- </body>
- </html>
这下可以尝试在form.html页面多输入几个用户的信息
展示效果为:
总结
来源: http://www.phperz.com/article/17/0830/340111.html