觉得这样写条件应该可以执行的。可是查第一个书名查的到,查其它的查不到,不知道问题在哪if(strlen('".$_POST["name"]."')!=0)
             {
             $query="select * from books.book where book_name='".$_POST["name"]."'";  
            }else             if(strlen('".$_POST["id"]."')!=0){    
             $query="select * from books.book where book_id='".$_POST["id"]."'";
            }else  
             if(strlen('".$_POST["book_author"]."')!=0){
                 $query="select * from books.book where book_author='".$_POST["book_author"]."'";   
             }else
                  if(strlen('".$_POST["book_publisher"]."')!=0){
                  $query="select * from books.book where book_publisher='".$_POST["book_publisher"]."'";    
                  }else 
                       if(strlen('".$_POST["book_date"]."')!=0){
                       $query="select * from books.book where book_date='".$_POST["book_date"]."'";    
                       }

解决方案 »

  1.   

    if(strlen('".$_POST["name"]."')!=0)
    这个条件永远成立,后面的不用考虑了因为这个语句是判断字符串".$_POST["name"]."的长度不为零,是字符串,跟任何变量没任何关系*注意php的单引号用法,LZ要去补习
      

  2.   

    php是弱变量,这个可以判断出为0的把,只有!==才判断类型if(strlen($_POST["name"]))这样就可以了,如果为0就不执行
      

  3.   

    问题就在这儿了~~
    strlen('".$_POST["name"]."')
    strlen($_POST['name'])