Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/vhosts/richmondcondo411.com/httpdocs/places.PHP on line 77
function getLocationsFromTable($table){
$query = "SELECT * FROM `$table`";
if( ! $queryResult = MysqL_query($query)) return null;
return MysqL_fetch_array($queryResult, MysqL_ASSOC);
}
在这里(到目前为止):
function hasCoordinates($houseNumber, $streetName){
$query = "SELECT lat,lng FROM geocache WHERE House = '$houseNumber' AND StreetName = '$streetName'";
$row = MysqL_fetch_array(MysqL_query($query), MysqL_ASSOC);
return ($row) ? true : false;
}
我知道我为每个代码片段使用不同的样式,这是因为我一直在玩第一个尝试隔离问题的代码片段.
第一个例子中的$table是’school’,它是一个绝对存在的表.
我只是不知道为什么它坐在那里等待超时而不是向我抛出错误.
来自网站其余部分的mySQL查询工作正常.我试着确保我这样连接
//connection was opened like this:
//$GLOBALS['dbh']=MysqL_connect ($db_host, $db_user, $db_pswd) or die ('I cannot connect to the database because: ' . MysqL_error());
if( ! $GLOBALS['dbh']) return null;
它让它过去那么好.有任何想法吗?
更新
这不是桌子的大小.我尝试只获得五个记录,但它仍然超时.另外,用这一行:
$query = "SELECT lat,lng FROM geocache WHERE House = '$houseNumber' AND StreetName = '$streetName'";
它只是寻找一个特定的记录,这就是它现在悬挂的地方.
解决方法:
等待mySQL查询返回数据所花费的时间不计入执行时间. See here.
问题很可能在代码中的其他地方 – 你所指责的函数可能在无限循环中被调用.尝试注释掉MysqL代码,看看我是否正确.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。