我在表单那有两个text<input type="text" name="beginTime">
<input type="text" name="endTime">
提交后到另一个页面,想查询sendTime在beginTime和endTime之间的数据;如果beginTime没有,则查询小于endTime之前的数据;如果endTime没有,则查询大于beginTime之后的数据;如果两个都没有,则查询全部数据
可是单独执行sql都可以,放到if-else语句中后就不行,这是为什么啊??我以下的代码执行时,两者都有可以,只有endTime也可以,但只有beginTime和两者都没有时没有结果,if-else语句没有写错吧?想不通为什么不行,麻烦了~~~~~~<%
String beginTime=(String)request.getParameter("beginTime");
String endTime=(String)request.getParameter("endTime");
String sql;
if(beginTime==null||beginTime=="")
beginTime="";
if(endTime==null||endTime=="")
endTime="";
sql="select * from message";
if(beginTime!=""&&endTime!="")
sql=sql+" where sendTime between '"+beginTime+"' and '"+endTime+"'";
else if(beginTime!="" and endTime=="")
sql=sql+" where sendTime>'"+beginTime+"'";
else if(beginTime=="" and endTime!="")
sql=sql+" where sendTime<'"+endTime+"'";
ResultSet rs;
rs=stmt.executeQuery(sql);
%>
<input type="text" name="endTime">
提交后到另一个页面,想查询sendTime在beginTime和endTime之间的数据;如果beginTime没有,则查询小于endTime之前的数据;如果endTime没有,则查询大于beginTime之后的数据;如果两个都没有,则查询全部数据
可是单独执行sql都可以,放到if-else语句中后就不行,这是为什么啊??我以下的代码执行时,两者都有可以,只有endTime也可以,但只有beginTime和两者都没有时没有结果,if-else语句没有写错吧?想不通为什么不行,麻烦了~~~~~~<%
String beginTime=(String)request.getParameter("beginTime");
String endTime=(String)request.getParameter("endTime");
String sql;
if(beginTime==null||beginTime=="")
beginTime="";
if(endTime==null||endTime=="")
endTime="";
sql="select * from message";
if(beginTime!=""&&endTime!="")
sql=sql+" where sendTime between '"+beginTime+"' and '"+endTime+"'";
else if(beginTime!="" and endTime=="")
sql=sql+" where sendTime>'"+beginTime+"'";
else if(beginTime=="" and endTime!="")
sql=sql+" where sendTime<'"+endTime+"'";
ResultSet rs;
rs=stmt.executeQuery(sql);
%>
解决方案 »
- 问一个菜鸟级的问题
- 画图啊,烦死啦、、、、、
- jsp不用<input type="file">怎么能上传程序????
- 问个Tomcat集群的问题
- public static int parseInt 方法的实现问题
- 读取语音报socket write error错误
- 能否在applet中使用jni调用本地代码?
- 求教:request.getParameter()得到中文字窜乱码问题。
- jbuilder9.0+weblogic8.1直接运行jsp抛出一大堆异常
- 【求助】关于easyui datagrid增删改后load无法及时刷新,需刷新网页的问题
- jdbcodbcdriver 找不到
- 如何将一个很长的数值分成很多个很短的数值?高手求助
页面使用的是JSP文件
先纠正一个问题
if(beginTime=="" and endTime!="")中间怎么用的 AND
你的IF条件写的有问题
if(beginTime==null||beginTime=="")
已经判断了
后面还要用
if(beginTime=="" && endTime!="")这肯定不行
那个if-else没有问题
按sheener所说,把“==”和“!=”改成 .equals后正确