麻烦你看看!!

03-01-03 lxr729

我在用jsp+javabean+sql7.0做个简单的留言,,现在困惑我的是只能从数据库里读出信息,不能朝数据库写入信息。 问题出在jsp代码?还是数据库呀!!

<%@ page import="java.sql.*" %>

<%!

//定义方法escapeHTMLTags

//用于替换用户输入字符串中的非法字符

private String escapeHTMLTags(String input)

{

//如果输入空串,直接返回

if(input==null|| input.length()==0)

{

return input;

}

//建立一个StringBuffer来处理输入数据

StringBuffer buf=new StringBuffer(input.length()+6);

char ch=' ';

//依次输入字串中的非法字符替换掉

for(int i=0;i<input.length();i++)

{

ch=input.charAt(i);

if(ch=='<')

{

buf.append("<");

}

else if(ch=='>')

{

buf.append(">");

}

//将回车替换为html的换行符

else

{

buf.append(ch);

}

}

return buf.toString();

}

//定义方法checkdatavalid

//用来检查某一个字符串是否全部为空格

private boolean checkDataValid(String input)

{

String strTemp=new String(input);

//如果是空字符串直接返回false

if(strTemp==null || strTemp.length()==0)

{

return false;

}

//除去目标字符串中的头尾空串

strTemp=strTemp.trim();

if(strTemp.length()==0)

{

return false;

}

else

{

return true;

}

}

%>

<%--载入一个数据库连接的javabean--%>

<jsp:useBean id="basicDB" class="riso.mybook.jsp.c7.basicDBBean" scope="page" />

<%

String author,title,content;

//从用户输入当中获得数据

author =(String)request.getParameter("author");

title =(String)request.getParameter("title");

content=(String)request.getParameter("content");

//除去输入中的非法字符

author=escapeHTMLTags(author);

content=escapeHTMLTags(content);

title=escapeHTMLTags(title);

//查询数据库,向数据库中输入数据

if(checkDataValid(author)&&checkDataValid(title))

{

String sql;

sql="INSERT INTO basiclyb(title,author,body)VALUES('";

sql+=title;

sql+="','";

sql+=author;

sql+="','";

sql+=content;

sql+="')";

byte[] temp=sql.getBytes("iso-8859-1");

String sqlCStr=new String(temp);

out.println(basicDB.DBConnect());

basicDB.executeQuery(sqlCStr);

//重定向到留言版主页面

response.sendRedirect("liuyanban.htm");

}

%>

上面是写入信息的add.jsp!谢谢你!!

jxb8901
2003-01-07 17:56

重贴一下, 看不到你的代码.