为什么这个PHP代码挂起调用mysql_query()?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了为什么这个PHP代码挂起调用mysql_query()?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1532字,纯文字阅读大概需要3分钟。
内容图文
我遇到了这个PHP脚本的问题,我得到了错误
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;
}
两者都在mysql_query()调用的行上.
我知道我为每个代码片段使用不同的样式,这是因为我一直在玩第一个尝试隔离问题的代码片段.
第一个例子中的$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代码,看看我是否正确.
内容总结
以上是互联网集市为您收集整理的为什么这个PHP代码挂起调用mysql_query()?全部内容,希望文章能够帮你解决为什么这个PHP代码挂起调用mysql_query()?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。