2013-09-27 148 views
-4

我不知道为什么它不断告诉我警告:mysql_num_rows()预计参数1是资源,鉴于布尔

mysql_num_rows()预计参数1是资源,布尔在C中给出:\ XAMPP \ htdocs中\了schedule2 \ course.php上线44

if(isset ($_POST['course']) && isset($_POST['coursedesc'])) 
{  

     $course = $_POST['course']; 
     $coursedesc = $_POST['coursedesc']; 

     $query = mysql_query("SELECT * FROM ".tblurser." WHERE CourseCode ='".$course."' and CourseDescription = '".$coursedesc."'"); 
     if(mysql_num_rows($query) > 0) 
     { 
      echo"<script>alert('Data already exist.');</script>"; 
           }else{ 
           if(empty($course) or empty($coursedesc)) 
           { 
            echo "<script> 

              alert(\"all fields are required \"); 

             </script>"; 
           }else{ 
            if(mysql_query("INSERT INTO tblcourse VALUES('','$course','$coursedesc')")) 
            { 
            }ELSE{ 
             echo"<script> 

              alert(\"Please try again\"); 

              </script>"; 
            } 
           } 
          } 

      } 
+2

您的查询失败,你一味地假设成功了,现在事情已经吹了,你的代码浮躁向前,留下在其身后混乱和破坏的痕迹。 –

+0

在你的文件“course.php”中,第44行,你有'mysql_num_rows()',它期望参数1是资源,并且你提供了一个布尔值 – James

+0

@amal - 不,他错过了$。并且您不引用表名 –

回答

0

这里引用文档:http://php.net/manual/en/function.mysql-query.php,将请求mysql_query在某些情况下返回false:

“mysql_如果用户没有权限访问查询引用的表,则query()也将失败并返回FALSE。“

此外,你要么在那里有一个单词“tblurser”,要么缺少一个“$”。无论哪种方式应该可能被修复。

+0

哦谢谢 我该怎么办? 再次感谢:) –

+0

不幸的是,我不能说为什么查询失败。 tblurser您的表的正确名称?如果是这样,请将您的查询从“SELECT * FROM”.tblurser。“...”更改为“SELECT * FROM tblurser ...”。否则,可能是缺少“$”? – SamA

+0

谢谢我输入错误表:)) 它应该是tblcourse –

1

PLZ检查http://php.net/manual/de/function.mysql-query.php,如果出现问题,mysql_query返回false(一个布尔值)。这将匹配你的错误信息(给出一个布尔值而不是资源)。你可以用“mysql_error()”来检查最后一个错误。

HTH,

相关问题