JSP的中文问题,如何在<form>中提交中文,用,request.getParameter收中文啊?
程序如下(去掉了无关部分)
<div align="center"><a href="book_inf.jsp?book_name=走遍美国辅导"><font color="#7880a7">走遍美国辅导</font>
我先在含有该段程序的页面中使用了中文“book_name=走遍美国辅导”
然后再下面的程序中取这个变量
<%
String book_name=request.getParameter("book_name");
out.println(book_name);
if(book_name!=null)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:MyForum";
Connection con=DriverManager.getConnection(url,"lizheng","1");
Statement stm=con.createStatement();
ResultSet result=stm.executeQuery("select * from bookshelf where name=\'"+book_name+"\'");
if(result.next())
{ String name=result.getString("name");
}
%>
但是database查询结果说没有这个纪录,咋办呢(我用的是tomcat,sqlserver)
问题点数:35、回复次数:10Top
1 楼net_lover(【孟子E章】)回复于 2002-12-08 15:21:55 得分 2
print(book_name)看是什么
另外,搜索jsp版,关键字:乱码Top
2 楼freefalcon(心宇—消失中...)回复于 2002-12-08 15:23:21 得分 2
out.println(book_name);能正常输出吗Top
3 楼zhx_232(笨狗熊妹妹)回复于 2002-12-08 15:34:14 得分 6
在得到参数的页面
name=new String(book_name.getBytes("ISO8859-1"));Top
4 楼Remus(十年)回复于 2002-12-08 17:25:36 得分 6
你要是住数据库存的话还得把sql语句处理一下成:query=new string(query.getBytes("gb2312"),"iso8859-1");Top
5 楼furious(辛苦工作)回复于 2002-12-08 22:11:50 得分 0
?我输入的程序这上面只有一半,再输入一次
程序如下
<div align="center"><a href="book_inf.jsp?book_id=1"><font color="#7880a7">走遍美国辅导</font></a></div>
这是一个叶面中的一段程序,提交后页面交由book_inf.jsp处理
其中相关代码如下
String book_name=request.getParameter("book_name");
if(book_name!=null)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:MyForum";
Connection con=DriverManager.getConnection(url,"user","1");
Statement stm=con.createStatement();
ResultSet result=stm.executeQuery("select * from bookshelf where name=\'"+book_name+"\'");
if(result.next())
{ String name=result.getString("name");
String author=result.getString("author");
String publish_house=result.getString ("publish_house");
String price=result.getString("price");
%>
程序以book_name为条件查旬,若book_name是中文就不行,换英文才可以,
我用的是tomcat 和 sqlserver
Top
6 楼furious(辛苦工作)回复于 2002-12-08 22:14:19 得分 0
打错了,是这样子
<div align="center"><a href="book_inf.jsp?book_name=走遍美国辅导"><font color="#7880a7">走遍美国辅导</font></a></div>
前面的程序是我后来改的(用book_id来查询)
Top
7 楼freefalcon(心宇—消失中...)回复于 2002-12-08 22:30:06 得分 18
在你的两个页面都加上字符集设置:
<%@ page contentType="text/html;charset=gb2312" %>
然后在接收页面用下面的语句进行转换
String book_name=new String(request.getParameter("book_name").getBytes("ISO8859-1"));
Top
8 楼furious(辛苦工作)回复于 2002-12-09 10:04:21 得分 0
好强啊,3x.
能不能问一下,这是什么原因啊Top
9 楼zxhong(红透半边天)回复于 2002-12-09 10:05:56 得分 1
对中文的支持太弱Top
10 楼cyrano()回复于 2002-12-09 10:28:48 得分 0
我用Weblogic怎么就没遇到过中文问题(根本不用转换字符集)……
不知是件好事还是坏事……Top




