f 是列表 ,f1是列表项目标签.还有f2.f3等!!
下面是部分代码! 
 if("f"="f1")
  {
    sql="select * from test where dd like '%" + v1 + "%'";
  }下面是出错代码!!!
Generated servlet error:
The left-hand side of an assignment must be a variable
是我的条件错了吗!!该怎么写呢!!!谢谢!!!

解决方案 »

  1.   

    if("f"="f1") 有问题吧
    左边的应该是变量f,不要加双引号,另外也不能用=号啊,比较字符串的值用f.equals("f1")
      

  2.   

    if("f"="f1")//常量不可能在赋值语句的左边!
      {
        sql="select * from test where dd like '%" + v1 + "%'";
      }
      应该是
     if("f"=="f1")
      {
        sql="select * from test where dd like '%" + v1 + "%'";
      }吧
    比较字符串的值应该使用
     if(f.equal(f1))
      {
        sql="select * from test where dd like '%" + v1 + "%'";
      }噻
      

  3.   

    <%@ include file="conn.jsp"%>
    <%String sql ="select * from test ";
    String  v1 = request.getParameter("v1");
    if((v1!=null)&&!v1.trim().equals(""))
    {
    %>
    <table width="100%"  border="0" cellspacing="1" bgcolor="#000000">
      <tr bordercolor="#000000" bgcolor="#FFFFFF">
        <td width="6%" ><font size="-1">订单编号</font></td>
        <td width="20%" ><font size="-1">客户名称</font></td>
        <td width="10%" ><font size="-1">产品名称</font></td>
        <td width="24%"><font size="-1">规格型号</font></td>
        <td width="16%" ><font size="-1">配置编码</font></td>
        <td width="3%" ><font size="-1">位单</font></td>
        <td width="3%" ><font size="-1">数量</font></td>
        <td width="18%" ><font size="-1">备注</font></td>
      </tr>
    <%
      byte[] tmpbyte=v1.getBytes("ISO8859_1");
      v1=new String(tmpbyte);
      if("f"=="f1"){  sql="select * from test where dd like '%" + v1 + "%'";}
      ResultSet rs=stmt.executeQuery(sql);
      while(rs.next()){%>
      <tr bordercolor="#000000" bgcolor="#FFFFFF">       
        <td height="20"><font size="-1"><%=rs.getInt(1)%></font></td>
        <td><font size="-1"><%=rs.getString(2)%></font></td>
        <td><font size="-1"><%=rs.getString(3)%></font></td>
        <td><font size="-1"><%=rs.getString(4)%></font></td>
        <td><font size="-1"><%=rs.getString(5)%></font></td>
        <td><div align="center"><font size="-1"><%=rs.getString(6)%></font></div></td>
        <td><div align="center"><font size="-1"><%=rs.getInt(7)%></font></div></td>
        <td><font size="-1"><%=rs.getString(8)%></font></td>
      </tr>
      <%}%>
    </table>
    <p>
    <% 
    rs.close();
    stmt.close(); 
    conn.close();
    }
    %>为什么输入一个关键字.查询后所的记录全出来了!!是为什么啊!
      

  4.   

    if("f"=="f1"){ sql="select * from test where dd like '%" + v1 + "%'";}判断条件是false,sql没有被重新赋值 "f"永远不等于"f1"你的判断条件到底是变量还是常量?