如何使用JSP+MySQL创建留言本(三)

下面我们开始建立留言的页面!
<%@page
import ="java.util.*"
import ="java.text.*"
import="java.sql.*"
import ="java.io.*"
import ="java.lang.*"
contentType="text/html; charset=gb2312"
%>
<%
class CommentError// throws java.lang.NullPointerException
{ public String Username="",Sex="",Address="",Postal="",Oicq="",Icq="",Tel="",Comment="";
public boolean NoError=true;//false;
public int ErrorCount=0;
private boolean IsNumber(String s1) {}
public String font (String se) {}
public String Comment_Er(String se) {}
public void Username (String se) {}
public void Sex (String se) {}
public void Address (String se) {}
public void Comment (String se) {}
public void Tel (String se) {}
public void Postal (String se) {}
public void Oicq (String se) {}
public void Icq (String se) {}
}
class FormatComment
{ public String Replace(String source, String oldString, String newString) {}
public String formatint(String se) {}
public String fromatcomment(String se) {}
public String toHtmlInput(String str) {}
public String toHtml(String str) {}
public String toSql(String str) {}//转换为可以加入Myqal的格式
}

%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>使用MYsql数据库</title>
</head>

<body>

<p align="center"><center><font style="COLOR: blue; FONT-FAMILY: 方正舒体,华文行楷,隶书,宋体; FONT-SIZE: 16pt">萍慧jsp留言薄</font></center></p>
<p align="center">

<%! String username,sex,address,post,oicq,icq,telnumber,comment,email,url.urltitle;
%>
<%
try{ username=request.getParameter("name");
}catch (NullPointerException e){ username="";}

try{ comment=request.getParameter("comment");
}catch (NullPointerException e){ comment="";}

try{ sex=request.getParameter("sex");
}catch (NullPointerException e){ sex="";}

try{ address=request.getParameter("address");
}catch (NullPointerException e){ address="";}

try{ post=request.getParameter("postal");
}catch (NullPointerException e){ post="";}

try{ oicq=request.getParameter("oicq");
}catch (NullPointerException e){ oicq="";}

try{ icq=request.getParameter("icq");
}catch (NullPointerException e){ icq="";}

try{ telnumber=request.getParameter("telphone");
}catch (NullPointerException e) { telnumber= ""; }
try{ email=request.getParameter("email");
}catch (NullPointerException e) { email= ""; }
try{ url=request.getParameter("url");
}catch (NullPointerException e) { url= ""; }
try{ urltitle=request.getParameter("urltitle");
}catch (NullPointerException e) { urltitle= ""; }

String ip=request.getRemoteAddr();//得到IP地址                      
String time=(new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss", Locale.US )).format(new java.util.Date());
String userid="";
String MyQuery="";
此处我调用了一个对留言进行合法检验的类
CommentError testcomment= new CommentError();
testcomment.Username(username);                      
testcomment.Postal (post);                      
testcomment.Sex(sex);
testcomment.Address(address);
testcomment.Tel(telnumber);
testcomment.Comment(comment);     
testcomment.Oicq(oicq);    
testcomment.Icq(icq);

if (testcomment.NoError) //留言中没有错误,写数据库                      
try {//写数据库成功                      
  java.sql.Connection sqlConn; //数据库连接对象
  java.sql.Statement sqlStmt; //语句对象
  java.sql.ResultSet sqlRst; //结果集对象
  //登记JDBC驱动对象
  Class.forName ("org.gjt.mm.mysql.Driver").newInstance ();
  //连接数据库
  sqlConn= java.sql.DriverManager.getConnection ("jdbc:mysql://localhost/pinghui","test","");
  //创建语句对象
  sqlStmt=sqlConn.createStatement (java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
  //执行Sql语句
此处调用了一个对留言进行处理的类,是留言能被Mysql承认,
  FormatComment FC= new FormatComment();                      
  oicq=FC.formatint(oicq);                      
  icq=FC.formatint(icq);                      
  post=FC.formatint(post);                      
  telnumber=FC.formatint(telnumber);         
  username=FC.toSql(username);         
  comment=FC.toSql(comment);         
  MyQuery="insert into comment (username,sex,address,ip,post,oicq,icq,telnumber,comment,time,url,email) values ('"+username+"','"+sex+"','"+address+"','"+ip+"',"+post+","+oicq+","+icq+",'"+telnumber+"','"+comment+"',now(),'"+url+"','"+email+"');";
  sqlRst=sqlStmt.executeQuery (MyQuery); //向数据库中加入数据
   sqlRst.close();//关闭结果集对象
  sqlStmt.close ();//关闭语句对象
  sqlConn.close(); //关闭数据库连接
  out.print (time);

%>
<font size="5" face="华文行楷">留言成功,谢谢!</font>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
  <tr>
   <td width="25%">昵称:<%=username%></td>
   <td width="25%">性别:<%=sex%></td>
   <td colspan="2" width="50%">地址:<%=address %></td>
  </tr>
  <tr>
   <td width="25%">电话:<%=telnumber%></td>
   <td width="25%">邮编:<%=post%></td>
   <td width="25%">OICQ:<%=oicq%></td>
   <td width="25%">ICQ:<%=icq%></td>
  </tr>
  <tr>
   <td colspan="2" width="50%">Email:<a href="mailto:" title="写信给留言者"></a></td>
   <td colspan="2" width="50%">网址:<a href target="_blank"></a></td>
  </tr>
  <tr>
   <td colspan="4"><font style="COLOR: green; LINE-HEIGHT: 150%">留言:</font><%=comment%><font style="COLOR: green; LINE-HEIGHT: 150%"><br>
        -</font><%=time %><font style="COLOR: green; LINE-HEIGHT: 150%">(来自</font><%=ip %><font style="COLOR: green; LINE-HEIGHT: 150%">)</font></td>
  </tr>
</tbody>
</table>
<hr color="#0080c0" noshade size="1" width="100%">

<%
} catch (SQLException e) //写数据库失败
{ out.print ("<font color=red>留言失败</font>");
  out.print (MyQuery);
  out.print (userid);
}
else
{
  out.print ("<font color=red>总共有"+testcomment.ErrorCount+"条错误数据,请修改!</font>");
%>

<script language="JavaScript">
<!--
function test_comments(theForm)
{
if (theForm.name.value == "")
{    alert("姓名不能为空!:-)");
  theForm.name.focus();
  return (false);
}
if (theForm.name.value.length > 12)
{ alert("姓名太长,不能多于12个字符(既六个汉字)!");
  theForm.name.focus();
  return (false);
}

if (theForm.address.value.length > 40)
{ alert("地址太长,不能多于40个字符(20个汉字)!");
  theForm.name.focus();
  return (false);
}

if (theForm.comment.value == "")
{ alert("抱歉,留言不能为空!你必须输入留言");
  theForm.comment.focus();
  return (false);
}
if (theForm.comment.value.length > 1000)
{ alert("抱歉,你的留言太长,最多为1000个字符!");
  theForm.comment.focus();
  return (false);
}
return (true);
} -->
<table>
<tr>
  <td>
   <table cellspacing="0" cellpadding="0">
    <tr>
     <td><!--表单开始-->
      <form action="addmysql.jsp" method="POST" name="all_comments" onsubmit="javascript:return (test_comments(this))">
       <table border="0" width="100%" cellspacing="0" cellpadding="0">
        <tr>
         <td width="60%">昵 称:<input name="name" size="20" value="<%if (username != null) out.print (username);%>"><%=testcomment.Comment_Er("username")%></td>
         <td nowrap width="40%">性 别:<select name="sex" size="1">
           <option selected value="男" <%if(sex=="男") out.print ("select"); %>>男</option>
           <option value="女" <%if(sex=="女") out.print ("select"); %>>女</option>
           <option value="保密" <%if(sex=="保密") out.print ("select"); %>>保密</option>
          </select><%=testcomment.Comment_Er("sex")%></td>
        </tr>
        <tr>
         <td colspan="2">地 址:<input name="address" size="40" value="<%if (address!=null) out.print(address);%>"><%=testcomment.Comment_Er("address")%></td>
        </tr>
        <tr>
         <td>电 话:<input name="telphone" size="15" value="<%if(telnumber!=null)out.print(telnumber);%>"><%=testcomment.Comment_Er("tel")%></td>
         <td>邮 编:<input name="postal" size="6" value="<%if(post!=null) out.print(post);%>"><%=testcomment.Comment_Er("postal")%></td>
        </tr>
        <tr>
         <td> OICQ:<input name="oicq" size="10" value="<%if(oicq!=null) out.print (oicq);%>"><%=testcomment.Comment_Er("oicq")%></td>
         <td> ICQ :<input name="icq" size="15" value="<%if(icq!=null)out.print(icq);%>"><%=testcomment.Comment_Er("icq")%></td>
        </tr>
        <tr>
         <td colspan="2">Email:<input name="email" size="25" value="<%if(email!=null) out.print(email);%>"><%//=testcomment.Comment_Er("")%></td>
        </tr>
        <tr>
         <td colspan="2">网 址:<input name="url" size="40" value="<%if(url!=null)out.print(url);%>"><%//=testcomment.Comment_Er("")%></td>
        </tr>
        <tr>
         <td colspan="2"><textarea cols="80" name="comment" rows="10" wrap="physical"><%if (comment!=null)out.print (comment);%></textarea>
        <tr>
         <td align="right"><input name="put_submit" type="submit" value="确定" ?></td>
         <td align="left"><input name="r" type="reset" value="重置"></td>
        </tr>
       </table>
      </form>
      <!--提交表单结束-->
     </td>
     <td><%=testcomment.Comment_Er("comment")%>请注意:你所输入的内容中,昵称和留言为必须输入的项目!<br>
      不支持html标志</td>
    </tr>
   </table>
  </td>
</tr>
</table>
<%
}
%>
</body>

(0)

相关推荐

  • 详解如何较好的使用js

    1 假如浏览器不支持JavaScript怎么办? a.为什么浏览器会不支持?大部分浏览器都有禁用脚本的功能,例如chrome. b.在js被禁用的情况下要保证网页仍能实现它的核心功能(关键的用户需求) 例子:在一个新窗口里打开链接,可以使用BOM的open()方法 function popUp(winURL) { window.open(winURL, "popup", "width=320,height=480"); } 具体的js实现有以下几个方案: 方案一:使

  • 如何使用JSP连接DB2数据库

    <%@page import="java.sql.*" import ="java.util.*" import ="java.io.*" contentType="text/html; charset=gb2312" %> <html> <head> <title>使用Db2数据库</title> <meta name="GENERATOR"

  • 如何使用JSP+MySQL创建留言本(一)

    说明:用JSP+MySQL数据库创建留言本,首先要创建MySQL数据库,关于MySQL的使用请到 http://pinghui.51.net/download/012mysql.chm 下载教程.现在为了说明的需要,我们假设数据库已经建立完成,数据库的名称是pinghui,其中有comment表是记录留言信息的. 数据库的结构为: +-----------+-------------+------+-----+---------------------+----------------+ | F

  • 如何使用JS获取IE上传文件路径(IE7,8)

    复制代码 代码如下: function validateFileSize(id, maxsize) {            var btnsave = document.getElementById("Button2");            btnsave.disabled = false;            var filepath = "";            var fileupload = document.getElementById(id)

  • 如何使用JSP访问MySQL数据库

    <%@page import="java.sql.*" import ="java.util.*" import ="java.io.*" contentType="text/html; charset=gb2312" %> <html> <head> <title>使用MYsql数据库</title> <meta name="GENERATOR&qu

  • 如何使用json在前后台进行数据传输实例介绍

    上一篇博客写到用javascript生成多组文本,可以让数据的输入不受显示,现在我们需要把这些输入写入数据库,这里就用到json传入. 首先,我们来写一下后台如何生成要传输的数据 [html] 复制代码 代码如下: function generateDtb() { //写入 var txtName = document.getElementById("txtName").value; //创建数组 var dtb = new Array(); //通过循环把数据写入到数组并返回 for

  • 如何使用JSP+MySQL创建留言本(二)

    有了数据库下面就要对数据库操作读取留言了! 下面列出显示留言的主要程序 <%@page import="java.sql.*" import ="java.util.*" import ="java.io.*" contentType="text/html; charset=gb2312" %> <html> <head> <title>萍慧自由空间留言本</title&g

  • 如何使用JSP+MySQL创建留言本(三)

    下面我们开始建立留言的页面! <%@page import ="java.util.*" import ="java.text.*" import="java.sql.*" import ="java.io.*" import ="java.lang.*" contentType="text/html; charset=gb2312" %> <% class Comme

  • MySQL 创建三张关系表实操

    目录 1.创建学生表 2.创建科目表 3.创建分数表 4.插入数据 5.查询全部分数 6.查询学生的平均分 7.总分排行榜 1.创建学生表 create table tbl_stu ( id int not null primary key auto_increment, name varchar(45) not null )engine=innodb default charset=utf8; 2.创建科目表 create table tbl_sub ( id int not null pri

  • MySQL中创建表的三种方法汇总

    目录 CREATE TABLE CREATE TABLE … LIKE CREATE TABLE … SELECT 总结 SQL 标准使用 CREATE TABLE 语句创建数据表:MySQL 则实现了三种创建表的方法,支持自定义表结构或者通过复制已有的表结构来创建新表,本文给大家分别介绍一下这些方法的使用和注意事项. CREATE TABLE CREATE TABLE 语句的基本语法如下: CREATE TABLE [IF NOT EXISTS] table_name ( column1 da

  • Windows2003下安装Apache+php+jsp+mysql

    Windows2003下安装Apache+php+jsp+mysql 一.php 目前版本4.3  1. 将php.ini-dist rem 为php.ini,copy to WINNT,copy php4ts.dll to WINNT/SYSTEM32,不需要再COPY或者改动其他设置. 2.PHP.INI: register_globals = Off --> on  extension=php_gd.dll 去掉注释,启动gd库  extension_dir = ./ --> c:\ph

  • jsp+mysql数据库操作常用方法实例总结

    本文实例讲述了jsp+mysql数据库操作常用方法.分享给大家供大家参考.具体如下: 1. 查看: <%@ page contentType="text/html;charset=GB2312" %> <%@ page import="java.sql.*" %> <HTML><style type="text/css"> <!-- body { background-color: #99CC

  • MySQL创建和删除表操作命令实例讲解

    创建表 简单的方式 复制代码 代码如下: CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 复制代码 代码如下: CREATE TABLE IF NOT EXISTS person ( number INT(11), name VARCHAR(255), birthday DATE ); 查看mysql创建表: 复制代码 代码如下: SHOW CREATE table person; CRE

  • MySQL 创建用户、授权用户、撤销用户权限、更改用户密码、删除用户(实用技巧)

    MySQL创建用户并授权及撤销用户权限 运行环境:MySQL5.0 一.创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆mysql服务器.

  • MYSQL 创建函数出错的解决方案

    在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题的方法,供您借鉴参考. 案例一: 目前在项目中,执行创建mysql的函数出错, mysql 创建函数出错信息如下: Error Code: 1227. Access denied; you need (at least one of) the SUPER privilege(s) for this operation 首先检查创建函数的功能是否开启,检查是否开启创建功能的SQL如下: -

随机推荐