动态页面,登陆,注册,留言 JSP
登陆页
主要使用html表单,javascript验证注册信息
<%@ 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> <script type="text/javascript"> function check()
{
var uid = document.getElementById("userid"); if(uid.value =="")
{
alert("请输入用户名"); return false;
}
if(dlform.password.value == "")
{
alert("密码不能为空") return false;
}
return true;
}
</script> </head>
<body> <form id="dlform" action="yanzheng.jsp" method="post" onSubmit="return check();"> 用户名:<input id="userid" name="userid" type="text" value="请输入用户名" size="20"/> 密码:<input id="password" name="password" type="password" size="20"/> <input type="submit" value="登陆" /> <a href="zhuce.jsp">注册新用户</a> </form> </body>
</html>
登陆验证页
使用request获取登录信息,response页面重定向,application获取参数,out输出提示。
<%@ 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 userid = request.getParameter("userid"); String password = request.getParameter("password");
//获取保存的注册信息
Object user = application.getAttribute("userxinxi"); if(user == null) //判断获取注册信息为空
{
response.sendRedirect("cuowutishi.jsp?msgid=4");
}
else //判断用户名密码能否登陆
{
String[] zcuser = user.toString().split("#") ; String zcuserid = zcuser[0];
String zcusername = zcuser[1];
String zcpassword = zcuser[2]; if(userid.equals(zcuserid))
{
if(password.equals(zcpassword))
{
out.print("欢迎" + zcusername + "登陆成功"); //跳转到留言页面
session.setAttribute("login", zcusername); }
else
{
response.sendRedirect("cuowutishi.jsp?msgid=3");
}
}
else
{
response.sendRedirect("cuowutishi.jsp?msgid=4");
}
} %>
<br><br>
<a href="liuyan.jsp">留言簿</a> </body>
</html>
注册页
主要使用html表单,javascript验证注册信息
<%@ 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> <script type="text/javascript">
function check()
{
if(zcform.zcid.value == "")
{
alert("请输入用户名"); return false;
} if(zcform.zcname.value == "")
{
alert("请输入用户昵称"); return false;
} if(zcform.zcpassword.value == "")
{
alert("请输入密码"); return false;
} if(zcform.qrpassword.value == "")
{
alert("请输入确认密码"); return false;
}
if(zcform.qrpassword.value != zcform.zcpassword.value)
{
alert("确认密码与用户密码不一致"); return false;
} return true;
}
</script> </head>
<body> <form id= "zcform" action="saveUser.jsp" method="get" onsubmit="return check();"> 用户代码:<input id="zcid" name="userid" type="text" size="20" /><br><br> 用户名称:<input id="zcname" name="username" type="text" size="20" /><br><br> 用户密码:<input id="zcpassword" name="password" type="password" size="20" /><br><br> 确认密码:<input id="qrpassword" name="qrpassword" type="password" size="20" /><br><br> <input type="submit" value="提交" /><br> <a href="login.jsp">返回登陆页</a> </form> </body>
</html>
保存注册页
request获取注册信息,注意中文转码,application储存注册信息,response页面重定向
<%@ 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 userid = request.getParameter("userid"); String username = new String(request.getParameter("username").getBytes("ISO-8859-1"),"UTF-8"); String password = request.getParameter("password"); Object user = application.getAttribute("userxinxi"); if(user != null) //判断是否已被注册
{
response.sendRedirect("cuowutishi.jsp?msgid=7");
}
else //保存注册信息
{
String userxinxi = userid + "#" + username + "#" + password; application.setAttribute("userxinxi", userxinxi); response.sendRedirect("cuowutishi.jsp?msgid=6");
}
%> </body>
</html>
留言页
session查看登陆状态,request获取留言信息,application储存和获取留言信息,response页面重定向,out输出留言。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
<%@ page import="java.text.*" %>
<!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 userName =""; //检查登陆状态
Object o = session.getAttribute("login"); if(o == null)
{
response.sendRedirect("cuowutishi.jsp?msgid=8");
}
else
{
userName = o.toString();
}
//获取留言信息
String liuy = request.getParameter("liuyan");
//判断留言信息不是空值和空字符串
if(liuy != null && !liuy.equals(""))
{
String strliuy = new String(liuy.getBytes("ISO-8859-1"),"UTF-8"); Object obj = application.getAttribute("liuyan"); //附加时间信息
Date dt = new Date();
//格式化时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String time = sdf.format(dt);
//留言内容 + 留言时间 + 留言人
strliuy += " " + time +
" " + "留言人“" + userName; ArrayList<String> A; if (obj == null)
{
A = new ArrayList<String>();
}
else
{
A = (ArrayList<String>)obj;
}
A.add(strliuy); response.sendRedirect("liuyan.jsp"); //页面重定向,防止刷新提交数据 application.setAttribute("liuyan", A);
}
else
{ } %> <form id="lyform" action="liuyan.jsp" method="post"> 最新留言<br><br> <%
//输出留言
int i = 1; Object obj = application.getAttribute("liuyan");
//判断获取的值不为空
if (obj != null)
{
ArrayList<String> A = (ArrayList<String>)obj; for(int m = A.size() - 1; m >= 0 ; m--) //倒数遍历
{
out.print(i + ". " + A.get(m) + "<br>" ); i++;
}
}
%>
<br><br>
留言簿<br>
<textarea name="liuyan" rows="20" cols="100"></textarea> <br> <input name="tijiao" type="submit" value="提交留言"/> </form> </body>
</html>
错误提示页
response页面重定向,定时跳转页面,out输出错误提示。
<%@ 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)
{
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; case 6 : out.print("提交成功"); break;
case 7 : out.print("该用户已存在"); break;
case 8 : out.print("请登录系统"); break; default: out.print("无法识别传递的信息"); break;
}
}
//返回登陆页
response.setHeader("refresh", "3;URL=login.jsp"); %> </body>
</html>
动态页面,登陆,注册,留言 JSP的更多相关文章
- JavaWeb 例子 JDBC+JSP登陆注册留言板
注册页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...
- JavaEE之动态页面技术(JSP/EL/JSTL)
动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- 使用jsp,tomcat实现用户登录注册留言的代码
以下jsp中,未使用样式表对网页进行排版和表单的验证(每个jsp的表单填写的时候应该进行空值与空格的验证,防止提交时出错) 所有错误,链接到error.jsp <%@ page language ...
- javaweb 登陆注册页面
视图的数据修改,表中也修改引用工具类用<%@ page import=""%> <%@ page import="java.util.Date" ...
- 动态页面技术JSP/EL/JSTL
本节内容: jsp脚本和注释 jsp运行原理 jsp指令(3个) jsp内置/隐式对象(9个) jsp标签(动作) EL技术 JSTL技术 JavaEE的开发模式 动态页面技术:就是在html中嵌入j ...
- jsp+servlet+mysql简单实现用户登陆注册
原码,项目中遇到的错误,解决方法,文章最后有链接可以获取 项目简介 *有的网友说在修改和删除时会触发error,建议各位不要去把用户名命名为中文! 功能描述 登陆,注册,用户一览表,修改,删除,添加, ...
- tornado web高级开发项目之抽屉官网的页面登陆验证、form验证、点赞、评论、文章分页处理、发送邮箱验证码、登陆验证码、注册、发布文章、上传图片
本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tornado的后端和ajax的 ...
- JSP内置对象的实验报告,页面登陆设计
JSP内置对象的实验报告 一.实验目的: 本实验的目的是让学生掌握怎样在JSP中使用内置对象request.page.response等. 二.实验要求: 编写四个JSP 页面login.jsp.Re ...
- Java第三阶段学习(十四、JSP动态页面、EL表达式、JSTL标签库)
一.JSP技术 1.jsp脚本和注释 jap脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部,比如写在doget.dopost 内的代码 2) ...
随机推荐
- bzoj1914 [Usaco2010 OPen]Triangle Counting 数三角形 计算机和
[Usaco2010 OPen]Triangle Counting 数三角形 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 526 Solved: 2 ...
- JS模块化工具requirejs教程02
基本API require会定义三个变量:define,require,requirejs,其中require === requirejs,一般使用require更简短 define 从名字就可以看出 ...
- php模板引擎smarty
一. smarty的特点 速度:相对于其他模板引擎,速度较快 编译型:在下次访问模板时直接访问编译文件,不再进行模板重新编译 缓存技术:可以将用户最终看到的HTML文件缓存成一个静态HTML 插件技术 ...
- [object-c 2.0 程序设计]object-c review (一)
// // main.m // cmdTry // // Created by Calos Chen on 2017/8/21. // Copyright © 2017年 Calos Chen. Al ...
- [bzoj2427][HAOI2010]软件安装——强连通分量+树形DP
题目大意 现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi.我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大). 但是 ...
- apparmor开启
- c#使用selenium截图,操作dom元素
using System; //添加selenium的引用 using OpenQA.Selenium.PhantomJS; using OpenQA.Selenium.Chrome; using O ...
- 智联招聘的python岗位数据结巴分词(二)
上次获取第一次分词之后的内容了 但是数据数据量太大了 ,这时候有个模块就派上用场了collections模块的Counter类 Counter类:为hashable对象计数,是字典的子类. 然后使用m ...
- Oracle存储过程学习笔记
SQL是一种语言! SQL是一种语言! SQL是一种语言! 个人理解:存储过程就相当于Java中的方法;声明变量区域就相当于java中的声明局部变量一样,只是放到一个指定区域定义了 一.先看一部分基础 ...
- Selenium 多窗口元素定位处理
以下文章来自于 上海-悠悠的博客 <Selenium2+python自动化13-多窗口.句柄(handle)> 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作, ...