Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何关闭特定mysql/php函数的错误_Php_Mysql_Error Handling - Fatal编程技术网

如何关闭特定mysql/php函数的错误

如何关闭特定mysql/php函数的错误,php,mysql,error-handling,Php,Mysql,Error Handling,因此,我想关闭执行此代码时可能出现的警告错误 for ($i=0; $i < count($project_array); $i++) { $projecthours[$i] = project_hours($project_array[$i]); $project_name = $project_array[$i]; $impact_query = "SELECT * FROM impact_data WHERE project_name ='$project_name

因此,我想关闭执行此代码时可能出现的警告错误

for ($i=0; $i < count($project_array); $i++) { 

  $projecthours[$i] = project_hours($project_array[$i]);
  $project_name = $project_array[$i];

  $impact_query = "SELECT * FROM impact_data WHERE project_name ='$project_name'";
  $impact_search = mysql_query($impact_query);
  $impact_num = mysql_num_rows($impact_search);


  if ($impact_num > 0 ) {

          // Do something

  } //IMPACT_NUM IF 

  else {

      Do Something Else

  } // ELSE statement
尽管我在两个函数前面都加了@符号,但仍然会出现以下错误。我不想把所有错误的网页,因为我认为这是一个坏主意,我仍然在工作的网站。这是我仍然得到的警告


警告:mysql_num_rows期望参数1是资源

我认为这有助于您:

error_reporting(0);
$impact_num = @mysql_num_rows($impact_search);
error_reporting(E_ALL);`

谁说这不可能?PHP非常灵活=

先检查$impact\u搜索怎么样

if(is_resource($impact_search))
{
    $impact_num = mysql_num_rows($impact_search);
    // Remaining stuff here
}

为什么不检查结果而不是隐藏错误呢?你不能在代码中关闭来自php的警告,你必须在php.ini中这样做。您应该重新编写代码以解决此错误,以便sql语句可以执行。在您提供的代码块之前是什么?为什么资源应该是数字?它应该是一个资源。我只想检查数据库中是否有这些项目名称。我还能怎么做呢?如果是,我希望它这样做,如果不做其他事情。@iamde_coder这只是我写的一个函数,与查询无关。哈哈,错误实际上已经消失了,所以它可以工作,但我在for循环开始之前就把它放了,因为仍然会出现一个错误。