20151126

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录页</title>
</head>
<body>

<form action="yanzheng.jsp" method="post">
用户:<input type="text" name="userid"  width=30 />
密码:<input type="text" name="password"  width=30 />
<br>
<input type="submit" value="提交" />
</form>

</body>
</html>

登录页

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录验证页面</title>
</head>
<body>
<%

  String strUserid =    request.getParameter("userid");
  String strPW =    request.getParameter("password");

  if(strUserid ==  null || strUserid.trim().length() == 0)        //trim()  去掉空格
  {
      response.sendRedirect("massage.jsp?msgid=1");    //跳转到massage.jsp 文件中的 msgid=1
  }
  else if(strPW ==  null || strPW.trim().length() == 0)        //trim()  去掉空格
  {
      response.sendRedirect("massage.jsp?msgid=2");
  }
  else
  {
      //查找用户信息
      String strUID = "zhangsan";
      String strP = "123456";
      if (strUserid.equals(strUID))  //找到账户
      {
          if(strPW.equals(strP))
          {
              response.sendRedirect("massage.jsp?msgid=3");
          }
          else
          {
              response.sendRedirect("massage.jsp?msgid=4");
          }
      }
      else
      {
          response.sendRedirect("massage.jsp?msgid=5");
      }
  }
%>
</body>
</html>

登录验证页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
       <%@ page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>消息页面</title>
</head>
<body>
<%
    String strMsgID = request.getParameter("msgid");
    if(strMsgID == null || strMsgID.trim().length() == 0)//如果只用后面的 如果放入一个空值,会造成空指针异常,会报错
    {
        out.print("请正确传递信息");
    }
    else
    {
         int iMsgid = Integer.parseInt(strMsgID);
        switch(iMsgid)        //当错误信息为1时 输出一句话
        {
        case 1:
        out.print("请输入用户代码!");
    break;
        case 2:
            out.print("请输入密码!");
    break;
        case 3:
            out.print("登陆成功!");
        break;
            case 4:
                out.print("密码输入错误!");
        break;
            case 5:
                out.print("用户不存在!");
        break;
        default:
            out.print("传递的msgid错误");
        }
    }
response.setHeader("refresh","3;URL=login.jsp");
%>
</body>
</html>

消息页面

时间: 2024-10-12 11:57:59

20151126的相关文章

2015-11-26 数组基础听课笔记

1.关于数组的大小: 在C语言中声明一个数组时需要指定其大小(柔性数组除外),数组的大小有两种指定的方式: a.显式指定数组大小 eg:int a[5]={1,2}; 即在声明数组的时候,就在数组的长度方括号[]内填写数组的长度,这种方式就是显式的指定数组大小的方式. b.隐式指定数组大小 eg:int b[] ={1,2}; 即在声明数组时,不在方括号内填写数组长度,但在后面给数组初始化值,这时候数组的长度就是花括号{}内所有元素的个数. 2.关于数组的初始化: 这个时候,有人不禁要问了,在我

20151126测试中问题

1.下面代码,k的运行结果是:(A) var i=0,j=0; for(;i<5,j<10;i++,j++){ k=i+j; } console.log(k);//18 A.18  B.10  C.5  D.0 "i<5,j<10;"这里执行时中间是","连接符连接的,程序运行时只会看最后一个条件,虽然也会看逗号前面的内容,但只会以最后一个逗号内容作为判断条件. 2. var x=1; function fn(n){ n=n+1; } y=f

Objective-C学习篇03—继承

大纲: 继承的基本概念 自定义初始化方法 便利构造器方法 重写description方法 一 继承基本概念 程序里的对象和"人类"的对象是一样的,高富帅继承了父母,自然就拥有了父母所有的资源,子类继承了父类同样就拥有了父类所有的属性和方法,当然,父类私有的除外. 我们在定义一个新的类的时候,常常会遇到要定义的新类是某个类的扩展或者是某个类的修正等这种情况.如果能够在已有的类的基础上定义新类,那么新类的定义将会变得十分简便. 类似于这种,通过扩展或者修改既有的类来定义新类的方法就叫做继承

食物分配问题

今天上午上了一天的课,中文回来把昨晚一个学姐给的问题解决了,不应该叫解决,叫有了点思路,因为不知道为什么程序一直重复输出,下午7,8节课又去上了汇编实验,感觉就是和数字电路电路没什么去了了(又是搞硬件),晚上,花了1个半小时,把该问题实实在在的解决了. 问题如下: //一堆食物,第一个人先拿走一个,在拿走剩下的九分之一,第二个先拿走两个,再拿走剩下的九分之一 //如此重复下去,直到最后一人拿走剩下的. 代码如下: 1 using System; 2 using System.Collection

基于Ubuntu12.04-server版的openstack F版搭建步骤

本文为双节点搭建,分为计算(IP1)和控制节点(IP2) 说明: 计算节点组件: 1.mysql 2.keystone 3.Nova 4.glance 5.rabbitmq 控制节点组件: 1.cinder 2.dashboard 一.修改主机名及静态IP 1.vim  /etc/hostname             xxctrl(xxctrl改为目标名) 2.vim  /etc/hosts     IP     xxctrl(目标名) 3.hostname xxctrl (使改名生效,也可

如何在的spring官网下载jar包问题

如何在改版的spring官网下载jar包问题 2014-04-17 08:46 粽子爱情 | 浏览 22341 次 第一步:打开官网:http://www.springsource.org/download/community: 第二步:点击图片 第三步:点击图标 第四步:找到如下链接,点击进去 第五步:再找到如下链接点击 第六步:点击artifacts标签 第七步:再在这个页面的左边菜单点击simple brower后再点击libs-release-local如下图 得到如下页面: 点击org

企业级业务系统开发实战

通过一个系列讲述一个真实企业的ERP系统开发全过程.其中包括需求分析.设计建模.开发.测试全生命周期过程,其中会详细讲方法论与技术实践.涉及到的方法包括敏捷软件开发.四色原型.领域驱动设计.业务架构.技术架构与具体的EF.WF.EasyUI等技术在项目中的使用. 领域驱动设计案例之领域层框架搭建 摘要: 根据前面对领域驱动设计概念以及一些最佳实践的理解,领域模型是系统最核心的部分,我们还是采用前面销售订单的例子,这个案例系统的核心构建就从领域层开始.领域层框架搭建主要完成两个任务:1.领域模型的

菜刀 ASP链接SHELL 抓包结果及分析

http://blog.csdn.net/webxscan     神龙 &chr(9)      TAB  \t &chr(58)     : :       换行 WebRoot   获取  SHELL信息 #获取路径 x=Eval   ("Execute(""On+Error+Resume+Next:Function+bd%28byVal+s%29%3AFor+i%3D1+To+Len%28s%29+Step+2%3Ac%3DMid%28s%2Ci%2C

iOS中你必须了解的多线程

多线程概念详解 什么是进程? 简单的说进程就是我们电脑上运行的一个个应用程序,每一个程序就是一个进程,并且每个进程之间是独立的,每个进程运行在其专用受保护的内存空间内(window系统可以通过任务管理器进行查看,Mac系统中可以通过活动监视器对其进行查看) 什么是线程? 通过上面的介绍我们知道了什么是进程,那么如何让进程运行起来,这个时候就要有线程了,也就是说每个应用程序想要跑起来,最少也要有一条线程存在,其实应用程序启动的时候我们的系统就会默认帮我们的应用程序开启一条线程,这条线程也叫做'主线