0

我有一个 PHP/MySQL 网站,它托管在共享主机上。这个网站不是一个巨大的流量网站。但是我经常遇到错误( Too Many Connections Error )。托管服务提供商说一次有 25 个 MySQL 连接

我正在使用两个函数进行数据库连接,initDB() 和 closeDB()

    function initDB()
    {
            $connection = mysql_connect($DatabaseURL,$DatabaseUName,$DatabasePWord);
            if($connection)
            {
                $db = mysql_select_db($DatabaseName,$connection);
            }
            return $connection;
    }

    function closeDB($connection)
    {
        mysql_close($connection);
    }

从数据库中获取数据

    $connection = initDB();

    //executing MySQL query

    closeDB($connection); 

这工作正常,但有时会出现太多连接错误。

在我的网站中,initDB()closeDB()函数被调用了 76 次。我确信打开的连接在执行后关闭

如果上述代码有任何问题

如何解决连接过多错误

4

1 回答 1

0

您可以使用static对您的代码进行快速破解。

function initDB()
{
        static $connection;
        if (!$connection) //establish connection only once
        {
            $connection = mysql_connect($DatabaseURL,$DatabaseUName,$DatabasePWord);
            if($connection)
            {
                $db = mysql_select_db($DatabaseName,$connection);
            }
        }
        return $connection;
}

function closeDB($connection)
{
    //no need to close.
}
于 2013-06-11T07:14:33.113 回答