Php 如何防止在多次重新加载/刷新页面时超过最大用户连接数?
我正在使用一个名为getfreehosting.co.uk的免费网络托管服务。Php 如何防止在多次重新加载/刷新页面时超过最大用户连接数?,php,mysql,Php,Mysql,我正在使用一个名为getfreehosting.co.uk的免费网络托管服务。最大用户连接数为5。每次我的页面加载时,它做的第一件事就是调用一个load.php,从我的数据库中获取一个条目。我的问题是,如果重新加载或刷新页面的次数过多,则会出现以下错误: 警告:mysql_connect()[function.mysql connect]:用户getfh_11654008 中已存在多个“最大用户连接”活动连接 /home/vol9/getfreehosting.co.uk/getfh_11654
最大用户连接数为5。每次我的页面加载时,它做的第一件事就是调用一个load.php
,从我的数据库中获取一个条目。我的问题是,如果重新加载或刷新页面的次数过多,则会出现以下错误:
警告:mysql_connect()[function.mysql connect]:用户getfh_11654008
中已存在多个“最大用户连接”活动连接
/home/vol9/getfreehosting.co.uk/getfh_11654008/htdocs/experience/load.php
在线3无法连接:用户getfh_11654008已经有超过
“最大用户连接数”活动连接数
我知道我使用的是免费的网络主机,所以我可能无法增加max\u user\u connections
。无论如何我都不必这样做,因为我只需要在任何给定的时间运行一个页面实例,因此理论上max\u user\u connections=5
就足够了。起初我认为问题一定是我的load.php
被调用太多次,导致太多的sql\u连接未关闭。但是,我在适当的位置调用了sql\u close()
,但仍然设法超过了max\u user\u connections
这是我的load.php
:
<?php
$link = mysql_connect(MYSQL_HOSTNAME, MY_USERNAME, MY_PASSWORD);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db(MY_DB, $link);
$result = mysql_query(SELECT ONE ENTRY);
if($r = mysql_fetch_assoc($result)) {
print json_encode($r); // convert data to json and return it
mysql_close($link);
}
else {
mysql_close($link);
die("Error: something went wrong");
}
?>
怎么了?我该怎么办?
答复:
你可以研究两件事:
mysql_close()-可能是因为您没有告诉系统,系统正在等待几秒钟来关闭连接。(也就是说,在你告诉电脑之前,或者在一切都说了、做了之后,电脑才会马上关门。)
$connection=mysql_connect();
mysql_close($connection)
请确保在连接时使用变量
您可以尝试php的mysql持久连接。本质上是一个到数据库的永久连接。。。这并不理想,但也可以奏效。它的语法实际上与mysql_connect()相同:
$connection=mysql\u pconnect(“本地主机”、“mysql\u用户”、“mysql\u pwd”)
中学:
如果您感兴趣,我可以为您提供一个更好的php/mysql开发环境(免费,没有任何义务)。。。100%是你的选择,只是想帮你
咆哮:
我不明白为什么这里的人坚持告诉其他人使用PDO,但不帮助解决问题。。。人们想用什么就用什么,直到他们学会了更好的方法。击败PDO并不能让人们更快地接受它……
答复:
你可以研究两件事:
mysql_close()-可能是因为您没有告诉系统,系统正在等待几秒钟来关闭连接。(也就是说,在你告诉电脑之前,或者在一切都说了、做了之后,电脑才会马上关门。)
$connection=mysql_connect();
mysql_close($connection)
请确保在连接时使用变量
您可以尝试php的mysql持久连接。本质上是一个到数据库的永久连接。。。这并不理想,但也可以奏效。它的语法实际上与mysql_connect()相同:
$connection=mysql\u pconnect(“本地主机”、“mysql\u用户”、“mysql\u pwd”)
中学:
如果您感兴趣,我可以为您提供一个更好的php/mysql开发环境(免费,没有任何义务)。。。100%是你的选择,只是想帮你
咆哮:
我不明白为什么这里的人坚持告诉其他人使用PDO,但不帮助解决问题。。。人们想用什么就用什么,直到他们学会了更好的方法。击败PDO不会让人们更快地采用它……也许你可以尝试使用PDO或mysqli的持久连接。mysql_*已被弃用。请改用PDO或mysqli。也许您可以尝试使用PDO或mysqli的持久连接。mysql_*已被弃用。改用PDO或mysqli。