如何将mysql更改为mysqli?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何将mysql更改为mysqli?

根据以下我用于常规mysql的代码,如何将其转换为使用mysqli?

像更改mysql_query($sql);为一样简单mysqli_query($sql);吗?

An Internal Error has Occured. Please report following error to the webmaster.

".mysql_error()."'"); mysql_select_db($DB['dbName']); // end header connection part // function from a functions file that I run a mysql query through in any page. function executeQuery($sql) { $result = mysql_query($sql); if (mysql_error()) { $error = '
An Internal Error has Occured.
The error has been recorded for review

'; if ($_SESSION['auto_id'] == 1) { $sql_formatted = highlight_string(stripslashes($sql), true); $error .= ' The MySQL Syntax Used
' . $sql_formatted . '

The MySQL Error Returned
' . mysql_error(); } die($error); } return $result; } // example query ran on anypage of the site using executeQuery function $sql='SELECT auto_id FROM friend_reg_user WHERE auto_id=' .$info['auto_id']; $result_member=executequery($sql); if($line_member=mysql_fetch_array($result_member)){ extract($line_member); } else { header("location: index.php"); exit; } ?>

展开
收起
保持可爱mmm 2020-05-08 10:56:32 505 0
1 条回答
写回答
取消 提交回答
  • 首先要做的可能是将每个mysql_函数调用都替换为等效函数mysqli_,至少在您愿意使用过程式API的情况下-考虑到您已经有一些基于MySQL API的代码,这将是更简单的方法是一种程序性的。

    为了解决这个问题,“ MySQLi扩展功能摘要”绝对是有用的。

    例如:

    mysql_connect 将被替换 mysqli_connect mysql_error将被替换为mysqli_error和/或mysqli_connect_error,具体取决于上下文 mysql_query 将被替换 mysqli_query 等等 注意:对于某些功能,您可能需要仔细检查参数:也许在这里和那里有一些区别-但不是很多,我要说:mysql和mysqli都基于同一个库(libmysql;至少对于PHP <= 5.2)

    例如:

    使用mysql时,必须使用mysql_select_db连接后的状态,以指示要在哪个数据库上执行查询 另一方面,mysqli允许您将数据库名称指定为的第四个参数mysqli_connect。 不过,mysqli_select_db如果您愿意,也可以使用一个功能。

    完成后,尝试执行脚本的新版本...并检查是否一切正常;如果没有...时间寻找虫子;-)来源:stack overflow

    2020-05-08 10:56:44
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
阿里云MySQL云数据库产品体系介绍
立即下载
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL
立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL
立即下载