相信很多朋友跟小编刚接触网页时的想法相同,我们输入信息后,是怎么发送到服务器上的,服务器又是如何告诉我们是否执行成功了呢?今天小编就通过我们最熟悉的登录功能来探索人机交互的秘密。
我们经常见到各种形形色色的登录页,但是无论页面以何种样式呈现,其最终都可以缩减为下面的样子
我们仅需要下面几行代码就可以写出上面的登录页面。麻雀虽小五脏俱全,下面小编就给大家详细介绍一下代码的含义。
网页通常都是由一对html标签构成,<html>和</html>限定了文档的开始和结束,在它们中间则是文档的头部和主体内容。
<head></head>用于定义文档的头部信息,其中间可以引用脚本(JS)、样式表(CSS)、元信息(META)、标题(TITLE)等信息。
<title></title>用于定义页面的标题(浏览器标签栏上显示的内容)
<body></body>用于定义文档的主体信息。我们在浏览器中所看到的所有内容都被定义在body标签中,其包括文本、图片、视频、超链接、表格、列表等。
<form></form>用于为用户创建表单,即我们登录时的输入区域。其开始标签中的action和method为form的属性。其中action属性告诉浏览器表格将被提交到的地址,method属性为表单提交的方式。
<input/>标签和上面集中都不相同,因为上面那些都是成对出现的,而input是单独出现的,这种标签成为自封闭标签。input标签的种类由type属性区分,我们代码中使用了3种input标签,分别为text(文本框)、password(密码框)和submit(提交按钮),name属性规定input的名称,用户后台对表单数据进行标识。文本框可以输入任意形式的字符,密码框仅可以输入字母、数字、特殊字符,并且会以
·
的形式隐藏输入内容,当点击提交按钮时,会将表单信息提交到指定地址。
说了那么多,到底服务器是如何接收我们发送过去的数据呢?其实很简单。代码和结果如下:
哇,好短!是不是有这种感觉?可以看到,我们刚才输入的用户是“ThinkPHP由浅入深”,密码是“1234567890”。
其实PHP已经帮我们自动将表单数据存储到$_POST(method=post时)和$_GET(method=get时)中了,我们需要的时候直接使用即可。下面是处理登录数据的完整代码。
$_POST['username']表示$_POST数组中字段名为username的值,date("Y-m-d H:i:s")表示系统当前时间。
登录功能虽然就这么完成了,但是当我们尝试刷新页面的时候,浏览器会出现下面的提示,这样让我很不爽,而且当我们重新doLogin页面时,会变成下面的样子。
要怎么办呢?继续往下看。
将doLogin.php修改为以上代码,并创建index.php文件。
此时,我们打开localhost/login/index.php,会直接跳转到login.php,在输入用户名:ThinkPHP,密码fmtol.com后,会跳转到index.php并显示登录信息。
即使关闭浏览器标签页(不关闭浏览器),再重新打开localhost/login/index.php,依然会直接显示我们的登录信息,这就是session的功劳。关于session的详细使用教程,以后我会单独向大家介绍。
看了用户登录的教程,是不是已经感觉到PHP的魅力了?简单的几行代码,就可以实现“高大上”的功能,您现在是不是也跃跃欲试呢?
私信小编login即可获取上述实例代码,如果您觉得小编的教程对您有所帮助,请点击关注支持小编,您的关注是对小编最大的鼓励。