当前位置:  编程技术>php
本页文章导读:
    ▪php session共享与登录验证的例子      当一个网站的用户量非常大时,就会使用服务器集群,此时就会涉及session共享的问题。 另外,验证同一用户的不同会话,也是个问题。一个用户并非通过浏览器来请求连接,而是通过socket或.........
    ▪php session 登录验证的例子      为大家介绍php session进行登录验证的例子,通过这个例子,可以更好的掌握php中session的用法。 有需要的朋友可参考下。 1、html登录页   代码示例: <html> <head> <title>session 登录.........
    ▪php基本语法-php入门教程(1)      因为在结果输出至浏览器之前,php脚本已经在服务器端执行,即被nginx或apache、iis等解释执行过了,返回的只是解析后的内容而已。 那么,说到源码,我们就先来看下php在编码时用到的一些最.........

[1]php session共享与登录验证的例子
    来源: 互联网  发布时间: 2013-12-24

当一个网站的用户量非常大时,就会使用服务器集群,此时就会涉及session共享的问题。
另外,验证同一用户的不同会话,也是个问题。一个用户并非通过浏览器来请求连接,而是通过socket或者其它方式来请求数据的时候,我们首先要对他进行用户登录验证,验证成功之后,就下发一个sessionid给他,然后他每次请求的时候就携带这个sessionid,我们通过这个sessionid来判断session是否已经存在,如果存在我们就认定用户已经登录。

对于第一个问题,可以把sessionid保存在数据库中得以实现。

第二个问题,就比较简单了。
首先,验证时产生一个sessionid;
 

代码示例:
<?php
Session_start();
$sessionId = session_id();//得到sessionid
//将session下发给客户端
.........
?>

客户端携带sessionid这个变量来请求数据:
 

代码示例:
<?php
Session_id(‘$sessionid');//注意这个时候session_id()这个函数是带有参数的
Session_start();//这个函数必须在session_id()之后
?>
 

此时session已经是登录验证时的session了。
注意:
在sessionServer.php中如果使用thinkphp等其他自动启动session_start();函数的框架时,首先一定要调用session_destory()函数以清空session。
这个有时容易忽略,搞的自己半天找不到问题在哪里!!!


    
[2]php session 登录验证的例子
    来源: 互联网  发布时间: 2013-12-24

为大家介绍php session进行登录验证的例子,通过这个例子,可以更好的掌握php中session的用法。
有需要的朋友可参考下。

1、html登录页
 

代码示例:
<html>
<head>
<title>session 登录验证 - www.</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form name="form1" method="post" action="/blog_article/login.html">
<table width="300" border="0" align="center" cellpadding="2" cellspacing="2">
<tr>
<td width="150"><div align="right">用户名:</div></td>
<td width="150"><input type="text" name="username"></td>
</tr>
<tr>
<td><div align="right">密码:</div></td>
<td><input type="password" name="passcode"></td>
</tr>
<tr>
<td><div align="right">Cookie保存时间:</div></td>
<td><select name="cookie" id="cookie">
<option value="0" selected>浏览器进程</option>
<option value="1">保存1天</option>
<option value="2">保存30天</option>
<option value="3">保存365天</option>
</select></td>
</tr>
</table>
<p align="center">
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Reset" value="Reset">
</p>
</form>
</body>
</html>

2、php程序页
 

代码示例:
<?php
@mysql_connect()("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器
or die("数据库服务器连接失败");
@mysql_select_db("test") //选择数据库mydb
or die("数据库不存在或不可用");
//获取用户输入
$username = $_POST['username'];
$passcode = $_POST['passcode'];
//执行SQL语句获得Session的值
$query = @mysql_query()("select username, userflag from users "
."where username = '$username' and passcode = '$passcode'")
or die("SQL语句执行失败");
//判断用户是否存在,密码是否正确
if($row = mysql_fetch_array($query))
{
session_start(); //标志Session的开始
//判断用户的权限信息是否有效,如果为1或0则说明有效
if($row['userflag'] == 1 or $row['userflag'] == 0)
{
$_SESSION['username'] = $row['username'];
$_SESSION['userflag'] = $row['userflag'];
echo "<a href="/blog_article/main.html" href="/blog_article/main.html">欢迎登录,点击此处进入欢迎界面</a>";
}
else //如果权限信息无效输出错误信息
{
echo "用户权限信息不正确";
}
}
else //如果用户名和密码不正确,则输出错误
{
echo "用户名或密码错误";
}
?>

3、注销登录页
 

代码示例:
<?php
unset($_SESSION['username']);
unset($_SESSION['passcode']);
unset($_SESSION['userflag']);
echo "注销成功";
?>

4、session验证页
 

代码示例:
<?php
session_start();
if(isset()($_SESSION['username']))
{
@mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器
or die("数据库服务器连接失败");
@mysql_select_db("test") //选择数据库mydb
or die("数据库不存在或不可用");
//获取Session
$username = $_SESSION['username'];
//执行SQL语句获得userflag的值
$query = @mysql_query("select userflag from users "
."where username = '$username'")
or die("SQL语句执行失败");
$row = mysql_fetch_array($query);
//判断当前数据库中的权限信息与Session中的信息比较,如果不同则更新Session的信息
if($row['userflag'] != $_SESSION['userflag'])
{
$_SESSION['userflag'] = $row['userflag'];
}
//根据Session的值输出不同的欢迎信息
if($_SESSION['userflag'] == 1)
echo "欢迎管理员".$_SESSION['username']."登录系统";
if($_SESSION['userflag'] == 0)
echo "欢迎用户".$_SESSION['username']."登录系统";
echo "<a href="/blog_article/logout.html" href="/blog_article/logout.html">注销</a>";
}
else
{
echo "您没有权限访问本页面";
}
?>

    
[3]php基本语法-php入门教程(1)
    来源: 互联网  发布时间: 2013-12-24

因为在结果输出至浏览器之前,php脚本已经在服务器端执行,即被nginx或apache、iis等解释执行过了,返回的只是解析后的内容而已。

那么,说到源码,我们就先来看下php在编码时用到的一些最基础的语法。

首先,php程序以<?php开始,以?>结束。php脚本程序可以放在文档中的任何位置,确切地说是<body>与</body>之间的任何位置。

在支持简写的服务器上,可以将开始与结束脚本块,写成这样:<? 和 ?>

出于养成良好编程习惯与兼容性的考虑,建议初学的朋友,一直都使用<?php的方式。

php程序或脚本,往往是与html标签融合在一起的,即便以后大家掌握了面向对象的编程,甚或掌握了mvc架构以后,php代码与html标签在一块的情况也是难以避免的。

来看一个简单的例子吧。
例1:

说明:php中每行代码均以分号结束。
在上面的代码中,我们用到了echo,它是php用来输出文本的指令,另外还有一个输出指令是print。

最后,我们看下php中的注释。
编写简洁、清晰、易懂的注释,是一个优秀程序员,要养成的良好习惯。
php中的注释也分为单行与多行注释,其中单选注释用//来表示,后面跟说明文字即可;多行注释与js中类似,用/* 注释说明 */来完成。

来看一个具体的例子。
例2:
 

今天的教程,就讲到这里,请大家继续关注由推出的php入门系列教程。
原创文章,未经授权,禁止转载。


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3