PHP4中session登录页面的应用

<?php
//这个脚本是用来给用户输入口令,并判断口令是否正确的。
//如果正确则转到欢迎页面。
if ($login){
    include("../include/config.inc.php3");
    session_start();
    $right_enter='0';
    $query="select * from user_define where user_login='$user_login' and user_pass=password('$user_pass')";
    $result=@mysql_query($query,$dbconnect);
    if ($user_array=@mysql_fetch_array($result)){
        $user_id=$user_array[user_id];
        $user_name=$user_array[user_info];
        session_register("user_id");
        session_register("user_name");
        session_register("user_array");
        if(($user_array[ticket_day]) and ($user_array[ticket_num])){
            $right_enter='1';
        }
        else{
            $error_message="对不起,您没有订票的权限!";
        }
    }
    else{
        $error_message="错误!用户名错,或口令错。请重新输入。";
    }
    $log_time=date("Y-m-d H:i:s");
    $query="insert into log_record (log_time,user_login,remote_addr,right_enter,enter_function) values ('$log_time','$user_login','$REMOTE_ADDR','$right_enter','1')";
    @mysql_query($query,$dbconnect);
    if($right_enter){
        Header("Location: welcome_reserve.php3");
        exit;
    }
}
if($logout){
    session_start();
    session_unregister("user_id");
    session_unregister("user_name");
    session_unregister("user_array");
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>用户登录</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" type="text/css" href="../include/njz_common.css">
</head><body>
<p> </p>

<form name="form1" method="post" action="<?php echo $PHP_SELF; ?>" >
  <table width="289" border="1" cellspacing="0" cellpadding="1" bordercolor="#999999" align="center">
    <tr bgcolor="#999999"> 
      <td> 
        <div align="center"><font color="#FFFFFF" size="4">用户登录</font></div>
      </td>
    </tr>
    <tr>
      <td>
        <table width="267" border="0" cellspacing="0" cellpadding="5" align="center">
          <tr> 
            <td width="94"> 
              <div align="right">用户:</div>
            </td>
            <td width="169"> 
              <input type="text" name="user_login" size="16" maxlength="16" value="<?php echo $user_login; ?>">
            </td>
          </tr>
          <tr> 
            <td width="94"> 
              <div align="right">口令:</div>
            </td>
            <td width="169"> 
              <input type="password" name="user_pass" size="16" maxlength="16">
            </td>
          </tr>
          <tr> 
            <td colspan="2"> 
              <div align="center"> 
                <input type="submit" name="login" value=" 登  录 ">
                <input type="button" name="return_index" value="返回首页" onClick="form1.action='../include/goto_page.php3?dist_page=../main.php3';form1.submit();return;">
              </div>
            </td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</form>
<?php
if($error_message) echo "<center><font color='#ff0000'>$error_message</font></center>";
?>
<SCRIPT language="JavaScript">document.form1.user_login.focus();
</SCRIPT>
<p> </p>
<?php include("../footer.php3"); ?>
</body>
</html>

时间: 2008-07-24

php session应用实例 登录验证

复制代码 代码如下: <html> <head> <title>Login</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body> <form name="form1" method="post" action=

解析php中session的实现原理以及大网站应用应注意的问题

PHP SESSION原理我们知道,session是在服务器端保持用户会话数据的一种方法,对应的cookie是 在客户端保持用户数据.HTTP协议是一种无状态协议,服务器响应完之后就失去了与浏览器的联系,最早,Netscape将cookie引入浏览器,使得 数据可以客户端跨页面交换,那么服务器是如何记住众多用户的会话数据呢? 首先要将客户端和服务器端建立一一联系,每个客户 端都得有一个唯一标识,这样服务器才能识别出来.建议唯一标识的方法有两种:cookie或者通过GET方式指定.默认配置的PHP

PHP和NodeJs开发的应用如何共用Session

首先了解下session的机制 客户端(浏览器中) cookie 作为键值,匹配服务器端的一个数据.然后客户端每次在 HTTP 请求里面带着那个 cookie,然后服务器端"理所当然"认为服务器端的这个数据是针对该客户端的. 某些系统喜欢把 session 内容编码后加密放在 cookie 里面 那么你可以 1.你可以共用 cookie,然后把数据放在 nodejs 和 拍黄片(Sorry,是PHP) 都可以取到的地方,例如 redis.影像中 php 默认的 session 是写他自

php session的应用详细介绍

php session高级应用 session在web技术中非常重要,由于网页是一种无状态的连接程序,因此无法得知用户的浏览状态.通过session则可以记录用户的有关信息,以供用户再次以此身份对web服务器提交要求时确认. 例如:用户在浏览电子商务网站的时候,如果没有session,那么用户每次浏览就需要输入账户密码. 1,Session 临时文件 在服务器中,如果将用户所有的Session都保存到临时目录中,会降低服务器的安全性和效率.打开服务器存储的站点会非常的慢. 使用PHP函数sess

session在PHP大型web应用中的使用

这时,函数bool session_set_save_handler ( callback open, callback close, callback read, callback write, callback destroy, callback gc )就是提供给我们解决这个问题的方案. 该函数使用的6个函数如下: 1. bool open() 用来打开会话存储机制, 2. bool close() 关闭会话存储操作. 3. mixde read() 从存储中装在session数据时使用这

koa大型web项目中使用路由装饰器的方法示例

一.关于重复造轮子解释下 在npmjs上搜索关于koa路由装饰器的已经有那么几个包了,但是我从几个包中发现作者的思维仅仅限制于前端开发的思想,项目分层不明确,我们开发kow-web项目可以根据java-web中项目分层的思想来写项目,项目结构清晰明了,本人封装这个包也是参考了java-web开发过程中把项目分为四层架构. 1.controllers:路由的控制 2.servers:常用于一些业务逻辑的判断 3.dao:操作数据库的 4.models:关于建表的数据模型 二.关于koa2-rout

Web 开发中Ajax的Session 超时处理方法

在 Java Web 开发中,当session超时的情况下,普通页面的跳转好处理.关于Ajax的请求超时处理,就需要特殊处理下了. 先写一个统一的过滤器,或者拦截器,针对Ajax请求进行过滤处理,下面示例以Filter为例: public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServ

jsp中session过期设置及web.xml配置学习

session的过期时间需要配置在tomcat 中的 web.xml 中,时间以分钟计算.另最大时间好像是24小时,就是说,你的session过期时间可以设置成1440,如果设置成1441是无效的.(还没有测试) 复制代码 代码如下: <session-config> <session-timeout>480</session-timeout> </session-config>

Web开发中客户端的跳转与服务器端的跳转的区别

客户端的跳转:跳转之后地址栏的信息是会变的,变为跳转之后的地址信息 例如:response.sendRedirect(); 服务器端的跳转:跳转之后的地址栏的信息不会发生任何的改变 例如:<jsp:forword> request.getRequestDisPather("").forword(request, response); (1).而且在使用request属性范围时,只有服务器端跳转才能将request范围的属性保存到跳转页面:而如果是客户端的跳转,则无法进行re

web.xml中servlet, bean, filter, listenr 加载顺序_动力节点Java学院整理

web.xml 文件中一般包括 servlet, spring, filter, listenr的配置.那么他们是按照一个什么顺序加载呢?加载顺序会影响对spring bean 的调用. 比如filter需要用到 bean ,但是加载顺序是 先加载filter 后加载spring,则filter中初始化操作中的bean为null:首先可以肯定 加载顺序与他们在web.xml 文件中的先后顺序无关. web.xml 中 listener 和 serverlet 的加载顺序为 先 listener

Java Web项目中验证码功能的制作攻略

一.前言 在表单页面中使用验证码的好处在于有效防止用户恶意提交表单,或者使用外挂非法攻击系统. 二.准备条件 1.一个普通的web项目 webProject: 2.一个web服务器 Tomcat. 三.实现思路: 1.自定义一个servlet  VerifyCodeServlet 画一个包含验证字符的验证码图片,这里的图片需要使用Graphics2D手动去画: 2.在具体页面使用img标签的src引用这个servlet即可显示servlet: 3.因为画图的时候把验证码信息放入了session,

在Python的web框架中编写创建日志的程序的教程

在Web开发中,后端代码写起来其实是相当容易的. 例如,我们编写一个REST API,用于创建一个Blog: @api @post('/api/blogs') def api_create_blog(): i = ctx.request.input(name='', summary='', content='') name = i.name.strip() summary = i.summary.strip() content = i.content.strip() if not name: r

JSP取得在WEB.XML中定义的参数

在WEB.XML文件中设置参数: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> &

Web设计中如何使用XML数据源对象

XML数据源对象是一个ActiveX控件,允许你在XML文件和HTML页面之间操作数据.本文将向你展示如何从各种XML数据源中提取数据,以及如何使用JavaScript显示这些数据. XML数据源对象DSO是一个微软ActiveX控件,构建在微软IE4以后的版本上.这个对象允许你把一个外部的XML文件或者嵌入HTML文件中的内容提取到HTML页面中. 你可以在一个Web页面中使用XML - DSO从一个外部XML文件中选取内容,从嵌入Web页面的XML中提取XML数据,然后使用JavaScrip