Php 用于低速mysql连接的函数store_result()
我对OVH MySQL有一个问题。继续断开连接。我想使用store_result(),但我不知道如何添加这个函数 代码:Php 用于低速mysql连接的函数store_result(),php,mysql,Php,Mysql,我对OVH MySQL有一个问题。继续断开连接。我想使用store_result(),但我不知道如何添加这个函数 代码: function executeQuery($query) { $db = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); if ($db == FALSE) return -1; if ((mysql_select_db(DB_NAME, $db)) == FALSE) re
function executeQuery($query) {
$db = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if ($db == FALSE)
return -1;
if ((mysql_select_db(DB_NAME, $db)) == FALSE)
return -1;
$result = mysql_query($query, $db);
if ($result == FALSE)
return -2;
if (!($result === true)) {
while ($row = mysql_fetch_array($result)) {
$ret[] = $row;
}
} else {
$ret[] = $result;
}
mysql_close($db);
if (isset($ret))
return $ret;
return 0;
}
你实际上做了一些非常错误的事情 每次调用
executeQuery()
函数时,都会建立一个新的mysql\u connect()
,然后是一个mysql\u select\u db()
。这是相当昂贵的,而且不是正确的方式。您需要在此处重用已建立的连接
关于如何重用连接,已经有了一个答案
其次,您使用的是obselete数据库API,即已弃用的
mysql.*
函数。切换到MySQLi
或PDO
使用PDO或MySQLi,因为mysql_*函数会贬值。您的问题与哪个存储结果()
函数相关?当您遇到连接丢失时,使用它的理由是什么?您的条件令人困惑。你为什么要打字!对,但假设第一次$result检查为false。如果mysql_query返回false,您将永远不会首先进入该条件,因此这是一个要检查的位置。If($result==false)
和If(!($result==true)){
是相同的