`

一个程序中login.php的代码

阅读更多

我只是想让大家看看cookie和session在有会员的程序注册或登录的程序中如何使用,虽然也不是最好的,但想能起到抛砖引玉的作用

session_start();
if(isset(
$HTTP_COOKIE_VARS['PHPSESSID']))//如果有cookie变量PHPSESSIN
{
session_id($HTTP_COOKIE_VARS['PHPSESSID']);//取出PHPSESSID(就是sessionid),和服务器上对应的session建立连接
$PHPSESSID=$HTTP_COOKIE_VARS['PHPSESSID'];
}
else
$PHPSESSID=session_id();//如果没有就重新生产一个新的sessionid
setcookie('PHPSESSID',$PHPSESSID,time()+3600*2400,$cookie_path);//设cookie,保存sessionid

if($HTTP_GET_VARS['islogout']!=1&&isset($HTTP_POST_VARS['name']))//如果用户没有注销,并且存在由表单提交过来的用户名
{
$HTTP_SESSION_VARS['account']='guest';//先把session变量account,也就是当前已经登录的用户名冲掉(这点我现在觉得不好),变成guest
$HTTP_SESSION_VARS['isadm']=0;//也是清掉,isadm是我这个程序表示是否为管理员的变量
$HTTP_SESSION_VARS['style']=$HTTP_GET_VARS['style'];//style是我的程序中表示当前用户的样式,也就是模板
$query='select*fromka_accountwhereaccount="'.$HTTP_POST_VARS['name'].'";';
$result=mysql_query($query);//从数据库中取出该用户名的密码等信息
if(mysql_num_rows($result)==1)//如果找到一个匹配的
{
$rec=mysql_fetch_object($result);
if(
$rec->banned!=1){//如果用户没有被禁止
if(encrypt($HTTP_POST_VARS['passwd'])==$rec->passwd)//如果密码匹配,encrypt是我的加密函数,我使用了默认的md5
{
$HTTP_SESSION_VARS['account']=$rec->account;//设当session变量account为这个用户
$HTTP_SESSION_VARS['isadm']=$rec->isadm;//类似上面
$err="已登录";
}
else
$err="密码错误";
}
else
$err="账号被禁止";
}
else
$err="账号不存在";
}
if(
$HTTP_GET_VARS['islogout']==1)//如果用户在注销,就把所有的session变量设置成guest的
{
$HTTP_SESSION_VARS['account']='guest';
$HTTP_SESSION_VARS['isadm']=0;
$HTTP_SESSION_VARS['style']='default';
}

echo
$err;显示出错信息
<!-- php buffer end -->

这段代码里有个不好的地方,我还没有改,就是如果有人登录,再用别的帐号登录的话就会把原来的登录信息踢掉,而不是提示现在不能登录。还有,我没有判断提交页面是否为本服务器的页面。

呵呵,临时注释的,不知道清楚与否,如果有问题请跟帖

还有,我这个是适合php4.2以后版本的默认设置的,所有页面之间传递用的变量都是用新的表达方式,也适合以前版本。

分享到:
评论

相关推荐

    PHP图书管理系统(源码+数据库+使用说明).zip

    (2)打开IE浏览器,在地址栏中输入127.0.0.1/29/login.php,即可运行程序。 注意:“127.0.0.1”的默认端口号为“80”,在安装Apache服务器时如果端口号采用的不是默认设置,而是用户自定义的(例如:88),那么...

    知识付费小程序,thinkphp内核,适用于资源下载,知识付费,虚拟交易变现类

    知识付费小程序,采用的是thinkphp内核, 属于资源下载,知识付费,虚拟交易变现类, 教程: 测试环境:php7.2+mysql5.6 后端教程 ...4.然后通过编辑器 运行小程序开发工具 上传代码至微信小程序

    免授权分销代理APP盒子源码 小程序源码下载

    后台安装 注意 数据库在压缩包内 注意 数据库在压缩包内...4.然后通过编辑器 运行小程序开发工具 上传代码至微信小程序 查看更多关于 小程序 的文章 如果不懂 看一下 dcloud 的官方介绍 里面有怎么编辑小程序 怎么安装

    知识小程序(广告、流量费)

    效果预览图https://ccc.huinenglingdong.top/index.php?type=productinfo&id=139 后台安装 1.将源码上传至服务器 首先修改数据库文件 Application\Common\...4.然后通过编辑器 运行小程序开发工具 上传代码至微信小程序

    PHP中的代码安全和SQL Injection防范1

    好,我们看上面的代码好像是能正常运行,没有问题,那么加入我提交一个非法的参数过去呢,那么效果会如何呢?比如我们的这个页是 http://www.traget.com/login.php,那么我们提交:...

    ASP.NET程序中常用的三十三种代码.txt

     if (ApplicationConfiguration.EventLogEnabled)LogEvent("出现一个未知错误。");  }  public AppException(string message)  {  LogEvent(message);  }  public AppException(string message,Exception ...

    微信小程序获取用户openId的实现方法

    微信小程序获取用户openId的实现方法 前端: wx.login({ success: function (res) { res.code }) 获取到code后,传到后台, 然后请求微信接口 ...把参数替换为自己的参数,这个接口就直接返回openId了 ...

    微信小程序 wx.login解密出现乱码的问题解决办法

    微信小程序 wx.login解密出现乱码的问题解决办法 ...其中一个回答说是因为多次调用wx.login之后导致的问题。 终于看到解决方案,于是赶紧去看我的代码。可是查找半天发现只调用了一次,根本不是这个问题。 有一

    最土团购用团800的一站通程序

    需要用phpmyadmin修改一下USER表中SNS字段的长度为64 再去修改登录模板\include\template\account_login.html 找到支付宝那个登录的前面 加以下代码 &lt;a href="/tuan800/login....

    基于微信小程序医院预约挂号系统PHP后端接口+源代码+文档说明+sql文件

    开发软件:Idea/Vscode等都可以 + 微信开发者工具 + Mysql 开发技术环境:小程序客户端 + PHP后端Laravel框架接口 + 小皮面板(phpstudy环境) 这里个项目是一个基于小程序的医院预约挂号系统,一共3个身份包括管理员...

    PHP 登录完成后如何跳转上一访问页面

    具体实现 我现在的程序是基于ThinkPHP框架的,我们会有一个父类控制器,下面我就把这个设置cookie的代码加到这个BaseAction里面的_initialize()函数中,这样程序就大大简化工作量了。 复制代码 代码如下:$refer = ...

    淘宝客程序全自动采集版源码 v2018.6.6.zip

    淘宝客程序全自动采集版源码 v2018.6.6 更新日志 1、增加自动跟单开关 2、修复积分商城的兑换记录 最新更新适配最新版阿里妈妈 淘宝客程序全自动采集版源码简介 淘宝客程序全自动采集版源码是采用php mysql进行...

    system-login-comments-php-mysql:用户可以在其中注册,登录和发表评论的Web应用程序。 内建

    评论系统 :desktop_computer: 用户可以在其中注册,登录和发表评论的Web应用... 另外,还有一个adm主字段,可以删除任何注释并检查报告。 可以在以下位置访问该应用程序: : 使用制造 :wrench: HTML CSS PHP MySQL

    PHP编程 源代码 光盘

    通常注册成功后,系统会产生一个激活码,而激活码是要发送邮件到用户的邮箱中。如果计算机不能直接发送邮件,则不能获取注册码。因此可以直接进入mysql数据库,查询“members”数据库als_signup表的记录,看看激活码...

    威客RAICO源代码

    1.上传所有程序到服务器,建议将RAICO安装到网站根目录,否则可能会出现问题! 2.然后在IE打开 http://www.youdomain.com/install.php 按照向导进行安装 3.RAICO的后台管理地址:...

    C#与.NET3.5高级程序设计Code

    C#与.NET3.5高级程序设计源代码 本书是c#领域久负盛名的经典著作,深入全面地叙述了c#编程语言和.net平台核心,并以大量示例剖析相关概念。书中介绍了c#的各种语言构造、.net 2.0的类、核心api、公共中间语言(cil)...

    Java-Web程序设计(PPT).pptx

    1.1 Web 应用程序 Web 应用程序概述 Web 应用的工作原理 使用Eclipse创建一个静态登录页面 20 25 Java-Web程序设计(PPT)全文共389页,当前为第4页。 1.1.1 Web 应用程序概述 随着Internet和网络应用程序的发展,其...

    彩虹外链网盘V5.4(php)

    是一款PHP网盘与外链分享程序,支持所有格式文件的上传,可以生成文件外链、图片外链、音乐视频外链,生成外链同时自动生成相应的UBB代码和HTML代码,还可支持文本、图片、音乐、视频在线预览,这不仅仅是一个网盘,...

    夏日php电子商务系统 v0.2

    由夏日博客独立开发的夏日PHP电子商务系统是一款基于PHP程序的免费电子购物系统,本系统采用当前最流行的PHP+MYSQL组合,同时系统代码完整 ,开源,功能全面,架构优秀,提供良好的用户体验及管理平台系统。...

Global site tag (gtag.js) - Google Analytics