如何关闭特定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循环开始之前就把它放了,因为仍然会出现一个错误。