我有点绝望,我不是一个非常有经验的PHP开发人员,现在我正在自己工作,我无法解决一个问题。
我有30或40个网站,30或40个网站(每个国家/地区的网站)
所有网站都使用完全相同的代码(
)但是我的某个网站没有显示出来。它只是没有加载没有错误它只是没有加载。我一整天都在努力,我相信这是由于一个功能,但我无法看到它的问题。
头文件调用配置文件@
<? include('config.php'); ?>
配置文件调用函数文件
include('functions.php');
并确定哪个功能可能是我从底部开始的问题,并且每次都逐个删除它们。最终我得到了一个函数,一旦删除,我的页面就会被加载,但由于缺少函数,显然会出现其他错误。
我认为的问题是:
function get_contenttitle($SectionID,$languageid){
global $languageid;
global $mysql_connect;
if($languageid==''){$languageid=$_SESSION["SelectLanguage"];}
$query='SELECT * FROM website.content WHERE SortOrder="'.$SectionID.'" AND LanguageID="'.$languageid.'" AND Active=1 AND LanguageID IN (1, 2, 3, 4, 5, 6, 8, 11, 12, 14, 15, 16, 30)';
//$content=dbqueryintoarray($query);
$content=db_query_into_array_enhanced($mysql_connect,$query);
if(count($content)>0){
$return=$content[0]["ContentTitle"];
}else{
if($languageid==''){$languageid=$_SESSION["SelectLanguage"];}
$query='SELECT * FROM website.content_auto WHERE SortOrder="'.$SectionID.'" AND LanguageID="'.$languageid.'" AND Active=1 AND LanguageID IN (1, 2, 3, 4, 5, 6, 8, 11, 12, 14, 15, 16, 30)';
//$content=dbqueryintoarray($query);
$content=db_query_into_array_enhanced($mysql_connect,$query);
if(count($content)>0){
$return=$content[0]["ContentTitle"];
}else{
$query='SELECT * FROM website.content WHERE SortOrder="'.$SectionID.'" AND LanguageID="1" AND Active=1';
//$content=dbqueryintoarray($query);
$content=db_query_into_array_enhanced($mysql_connect,$query);
if(count($content)>0){
$return=$content[0]["ContentTitle"];
}else{
$return='<b><font color="#FF0000">Warning:</font></b> Content does not exist';
}
}
}
$return=str_replace(chr(10),'<br>',$return);
return $return;
}
现在在顶部导航中调用此函数。如果我删除该功能,页面会加载到调用它的导航,然后显然会停止。只要我把功能放回页面,就会再次停止加载。
此函数使用db_query_into_array_enhanced函数,如下所示:
function db_query_into_array_enhanced($mysql_connect,$query){
global $mysql_debug_comments;
global $total_query_count;
global $total_query_time;
global $total_function_time;
global $log_to_firephp;
global $query_results_to_firephp;
global $output_stats_to_browser;
global $firephp;
global $slow_query_time;
global $query_time;
$bt=debug_backtrace();
$file=$bt[1]["file"];
$pos=strrpos($file,'/');
$calling_script=substr($file,($pos+1));
$calling_line=$bt[1]["line"];
settype($retval,"array");
$query_start=getmicrotime();
$result=mysqli_query($mysql_connect,$query);
$query_end=getmicrotime();
$query_time=($query_end-$query_start);
$total_query_time=$total_query_time+$query_time;
$query_time_ms=round($query_time*1000);
if(!$result){$mysql_debug_comments.="<!-- db_query_into_array_enhanced | Called By: ".$calling_script." | Line: ".$calling_line." | Query FAILED ".$query." -->\n\n";}
if($result){
$success=true;
$function_start=getmicrotime();
$row_count=mysqli_num_rows($result);
for($x=0;$x<$row_count;$x++){$row=mysqli_fetch_array($result,MYSQLI_ASSOC);array_push($retval,$row);}
mysqli_free_result($result_set);
$function_end=getmicrotime();
$function_time=($function_end-$function_start);
$total_function_time=$total_function_time+$function_time;
$mysql_debug_comments.="<!-- Function: db_query_into_array_enhanced | Called By: ".$calling_script." | Line: ".$calling_line." | Status: OK | Results: ".count($retval)." rows | Query Time: ".$query_time_ms."ms | Total Time: ".round($total_query_time*1000)." ms ";
if($query_time_ms>$slow_query_time){$mysql_debug_comments.=" | Query: ".$query." ";}
$mysql_debug_comments.="-->\n\n";
$total_query_count++;
}
if($log_to_firephp==true){
$query_time_ms=round($query_time*1000);
$function_time_ms=round($function_time*1000);
$total_time=$query_time+$function_time;
$query_perc=round(($query_time/$total_time)*100,2);
$function_perc=round(($function_time/$total_time)*100,2);
$log_type='info';
if($success==true){
$message1='db_query_into_array_enhanced | Query: "'.$query.'"';
$message2='db_query_into_array_enhanced | Rows: '.count($retval).' | MySQL Time: '.$query_time_ms.'ms ('.$query_perc.'%) | Function Time: '.$function_time_ms.'ms ('.$function_perc.'%) | Total Time: '.($query_time_ms+$function_time_ms).'ms';
if(($query_time>0.5) or ($function_time>0.5) or ($query_time+$function_time>0.5)){$log_type='warn';}
}else{
$message1='db_query_into_array_enhanced | Query: "'.$query.'" | QUERY FAILED!';
$log_type='error';
}
if($log_type=='info'){$firephp->info($message1);$firephp->info($message2);}
if($log_type=='warn'){$firephp->warn($message1);$firephp->warn($message2);}
if($log_type=='error'){$firephp->error($message1);}
}
if($query_results_to_firephp==true){
$headings=array_keys($retval[0]);
$table=array();
$table[]=$headings;
for($r=0;$r<count($retval);$r++){
$row=array();
for($c=0;$c<count($retval[0]);$c++){array_push($row,$retval[$r][$headings[$c]]);}
$table[]=$row;
}
$firephp->table('Results from MySQL Query "'.$query.'" Rows: '.count($retval).' Time: '.($query_end-$query_start).'s', $table);
}
if($output_stats_to_browser==true){
echo 'Query: '.$query.'<br>';
echo 'Query Time: '.$query_time_ms.'ms ('.$query_perc.'%)<br>';
echo 'Function Time: '.$function_time_ms.'ms ('.$function_perc.'%)<br>';
echo 'Total Time: '.($query_time_ms+$function_time_ms).'ms<br>';
echo 'Rows returned: '.count($retval).'<br>';
}
return $retval;
}
我已经检查过每一个其他工作网站的代码,而且一切都是一样的。完全一样。
我想到这里可以有人请请帮帮我
非常感谢
答案 0 :(得分:0)
我的猜测是函数“get_contenttitle”正在查找未连接的数据库中的数据。我也没有在其他函数“db_query_into_array_enhanced”中看到连接。是否有连接数据库的功能?如果是这样,请检查出来。确保它与其中一个工作地点完全相同。