一、验证码

实现简单的验证码思路:假设验证码是四位由数字和英文字母组成

1.首先我们需要一个数组来装下这个随机数(没有1和0是因为为了提高用户的体验感)

//下标:0-33var arr = new Array(2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');//所有候选组成验证码的字符,当然也可以用中文的

2.然后我们根据随机下标拿到对应的值在循环四次就可以拿到我们想要的4位组成的验证码

var str = "";//用来拼接for(var i=0;i<4;i++){//随机数  无限逼近0-33 四舍五入 var a=Math.round(Math.random()*33);//下标//console.info(arr[a]);//根据下标取元素str+=arr[a];}

3.最后给我们装验证码的容器赋值即可,我这里用的是span标签

//给span赋值 $("#yzm").html(str);//innerHTML

4.实现点击验证码就自动切还(给这个验证码容器添加点击事件即可)

//这里我用的是js的函数
$(function(){myf();//给验证码添加点击事件$("#yzm").click(function(){myf();//刷新验证码});})

5.若大家想要实现大小写都可用可以把输入内容转为全大写或者全小写

二、登录

要实现登录首先我们需要有在数据库有一个用户表来装用户名及密码

其次就要先在登录页面判断用户名密码验证码是否正确

//这里我只判断了不能为空及验证码要正确
//验证登录function yzLogin(){//依次获取用户名、密码、用户输入的验证码、随机产生的验证码  不能为空var name=$("#xx").val();var pwd=$("#yy").val();var yzm1=$("#zz").val();var yzm2=$("#yzm").html();if(name==""){alert("用户名不能为空");return false;}if(pwd==""){alert("密码不能为空");return false;}if(yzm1==""){alert("验证码不能为空");return false;}else{//当验证码不为空的情况下//作业1:要求验证码不区分大小写 if(yzm1!=yzm2){//不一致的时候 提示alert("验证码有误");myf();//刷新验证码$("#zz").val("");//清空文本框return false;}}return true;}
<body><form action="dologin.jsp" method="post" onsubmit="return yzLogin()"><div id="login"><div id="top"><div id="top_left"><img src="data:images/login_03.gif" /></div><div id="top_center"></div></div><div id="center"><div id="center_left"></div><div id="center_middle"><div id="user">用 户<input type="text" name="aa" id="xx"/></div><div id="password">密   码<input type="password" name="bb" id="yy" /></div><div id="password">验证码<input id="zz" style="width: 40px;" type="text" name="cc" />&nbsp;&nbsp;<span id="yzm" style="color:red;font-size:20px;cursor:pointer;">XXXX</span></div><div id="btn"><!-- <a href="#">登录</a><a href="#">清空</a> --><input type="submit" value="登录"/><input type="reset" value="清空"/></div></div><div id="center_right"></div>      </div><div id="down"><div id="down_left"><div id="inf"><span class="inf_text">版本信息</span><span class="copyright">管理信息系统 2008 v2.0</span></div></div><div id="down_center"></div>      </div></div></form>
</body>

若符合以上条件则跳到dologin页面进行判断数据库是否存在

//设置编码方式request.setCharacterEncoding("utf-8");//接收表单提交过来的值:用户名 密码  根据name值取value值 String name=request.getParameter("aa");String pwd=request.getParameter("bb");//jdbc连接Oracle做判断 String URL="jdbc:oracle:thin:@localhost:1521:orcl";String CNAME="oracle.jdbc.driver.OracleDriver";//加载驱动Class.forName(CNAME);//创建连接Connection con=DriverManager.getConnection(URL, "scott", "tiger");//定义sql语句String sql="select * from tb_0325 where sname=? and spwd=?";//获得执行对象PreparedStatement ps=con.prepareStatement(sql);//给占位符赋值ps.setString(1, name);ps.setString(2, pwd);//开始执行ResultSet rs=ps.executeQuery();//判断 遍历if(rs.next()){//说明登录成功 跳转到新闻发布系统的管理员界面 //重定向//response.sendRedirect("news/admin.jsp");//转发request.getRequestDispatcher("news/admin.jsp").forward(request, response);}else{//说明登录失败out.print("<script>alert('用户名或者密码有误');location.href='login.jsp';</script>");}//关闭资源if(con!=null&&!con.isClosed()){con.close();}if(ps!=null){ps.close();}if(rs!=null){rs.close();}

三、新闻增加

以上都通过后就可以进入我们的新闻发布系统页面

这是我的页面

点击增加新闻可以进入增加页面(需要给a变迁添加href)

然后我们写一个页面来接收增加页面传过来的值

//设置编码方式request.setCharacterEncoding("utf-8");//接收表单提交过来的值//括号里的代表我对应的idString ntid=request.getParameter("ntid");String ntitle=request.getParameter("ntitle");String nauthor=request.getParameter("nauthor");String nsummary=request.getParameter("nsummary");String ncontent=request.getParameter("ncontent");String naddtime=new Date().toLocaleString();//取系统当前时间 /*主键:唯一且不为空1.标识列:触发器+序列 交给你们 2.取表主键的最大序号+1 */String URL="jdbc:oracle:thin:@localhost:1521:orcl";String CNAME="oracle.jdbc.driver.OracleDriver";Class.forName(CNAME);Connection con=DriverManager.getConnection(URL, "scott", "tiger");String sql="select nvl(max(nid),0) from news280";PreparedStatement ps=con.prepareStatement(sql);ResultSet rs=ps.executeQuery();int nid = 0;//扩大作用域if(rs.next()){nid=rs.getInt(1)+1;//最大序号+1}//实现增加=插入操作sql="insert into news280(nid,tid,ntitle,nauthor,nsummary,ncontent,naddtime) values(?,?,?,?,?,?,?)"; //执行sql语句ps=con.prepareStatement(sql);//给占位符赋值ps.setInt(1, nid);ps.setInt(2, Integer.parseInt(ntid));ps.setString(3, ntitle);ps.setString(4, nauthor);ps.setString(5, nsummary);ps.setString(6, ncontent);ps.setString(7, naddtime);//获得影响行数int n=ps.executeUpdate();//关闭资源if(con!=null&&!con.isClosed()){con.close();}if(ps!=null){ps.close();}if(rs!=null){rs.close();}//做判断if(n>0){//说明发表成功//新闻主界面response.sendRedirect("/s4/news/admin.jsp");}else{//说明发表失败out.print("<script>alert('发表失败');location.href='add.jsp';</script>");}

JavaWeb04----验证码登录新闻增加相关推荐

  1. JavaWeb04(验证码登录新闻增加)

    笔记: 一.验证码 实现简单的验证码思路:假设验证码是四位由数字和英文字母组成 1.首先我们需要一个数组来装一下这个随机数(没有1和0是因为提高用户的体验性) //下标:0-33var arr = n ...

  2. javaWeb(验证码登录$新闻增加)

    一.完成简易验证码的制作 $(function(){myf();//给验证码添加点击事件$("#yzm").click(function(){myf();//刷新验证码});})/ ...

  3. javaWeb04(验证码登陆新闻增加)

    Everbody晚上好,现在是我们的深夜学习时间! 不要跟我说现在应该休息了,咱们生命不息,学习不止Q_Q,(才不会告诉你们我刚刚才想起来,不能拖欠!)好了现在我们进入今天的主题javaWeb04验证 ...

  4. JavaWeb验证码登录新闻发布

    前言 上次九歌分享了页面的跳转&JDBC 有了JDBC我们可以连上数据库啦,就可以开始做项目学习JavaWeb了,这次的项目是新闻发布系统,我会慢慢做,等完善版出来会做整个项目的文章,敬请期待 ...

  5. JavaWeb项目:新闻发布系统01(登录新闻增加)

    上次给大家介绍了一下页面的跳转和数据库的连接,不知道大家都记住了没有啊,今天就来接着给大家分享一下如何制作一个简单的新闻小项目吧,会用到之前给大家分享的一些知识哦,不知道大家都记住了没有,赶紧来一起动 ...

  6. JavaWeb新闻发布系统的登录新闻增加

    目录 一.登陆 登陆界面代码: 登陆逻辑处理代码: 二.首页代码 三.新闻添加 增加界面的代码: 处理增加的代码: 数据库代码 前言:我已经和大家分享一些关于JavaWeb的简单知识,我会运用这些写一 ...

  7. Spring Security简单增加短信验证码登录

    查网上资料增加短信验证码登录都要增加一大推,要重头写Spring Security的实现,我呢,只想在原来的密码登录基础上简单实现一下短信验证码登录. 1.首先得先一个认证类,来认证验证码是否正确,这 ...

  8. JavaWeb的登录与新闻增加

    目录 一.页面登录跳转 1.跳转的写法以及跳转的路径 2.前提工作 3.登录跳转功能的写法 ·登录界面 ·登录处理界面 ·首页 二.新闻的增加 1.新闻增加界面 2.新闻增加处理界面 3.数据库 储存 ...

  9. 各种登录源码来了!基础登录、验证码登录、小程序登录...全都要!

    现在开发个应用登录比以前麻烦的多.产品经理说用户名密码登录.短信登录都得弄上,如果搞个小程序连小程序登录也得安排上,差不多就是我全都要. 多种登录途径达到一个效果确实不太容易,今天胖哥在Spring ...

最新文章

  1. TOP命令的补充笔记
  2. 工程架构师对3月14号的白×××人节有什么看法??
  3. Swift 位运算练习
  4. 2020年8月编程语言排行榜新鲜出炉 - 编程语言世界的假期
  5. android+proguard目录,Android proguard问题:路径可能不是null或空字符串.路径=“空”...
  6. 电子垃圾行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  7. 2020 年软件开发趋势预测!
  8. python描述符魔术方法_Python类型转换的魔术方法详解
  9. html和css的编程规范,Bootstrap CSS编码规范
  10. Linux kali 安装 qq Tim
  11. 数字信号处理实验三用fft对信号作频谱分析_矢量信号分析
  12. php weka,使用Weka进行数据挖掘
  13. win7计算机用户文件,如何修改win7系统桌面“用户”文件夹路径
  14. 基于JWT的API权限鉴定
  15. Character类的常用方法
  16. 在第四代计算机期间全世界逐步进入了,1、在第四代计算机期间内,计算机的应用逐步进入到.docx.docx...
  17. manjaro安装搜狗拼音输入法
  18. Eureka 注册延迟
  19. Hive 如何划分 Stage【转载】
  20. 努比亚z17s刷魔趣90

热门文章

  1. ffmpeg中文版文档
  2. 女生最爱说的33句双关语
  3. 【信息安全】信息系统应急计划
  4. 关于利率的c语言程序,C语言程序,求存款利息的计算。有1000元...
  5. 面试后别忘了说“谢谢”
  6. (JAVA) 面向对象编程(中级部分)
  7. 4am永远 鼠标按键设置_4AM创造历史,成为首个PCL双冠队伍,韦神赛后采访霸气十足...
  8. iPhone 12 Mini、iPhone12、iPhone12 Pro、iPhone12 Max 电池容量
  9. Photoshop网页设计之导航
  10. [FML]学习笔记三 Rademacher Complexity