将 MySQL 转换为 MySQLi
根据提供的代码,最初看起来可能就像替换 mysql_query($sql); 一样简单。与 mysqli_query($sql);。然而,要完全转换为 MySQLi,需要进一步修改。
函数替换:
第一步是将每个 mysql_* 函数替换为其相应的 mysqli_*对方。 MySQLi 扩展函数摘要为此目的提供了全面的列表。
数据库选择:
与 MySQL 不同,MySQLi 允许您在使用 mysqli_connect 的第四个参数进行连接时指定数据库。或者,如果愿意,您仍然可以使用 mysqli_select_db 函数。
其他注意事项:
示例:
以下是将提供的代码转换为 MySQLi:
// Header file with the database configuration $DB['dbName'] = "emails"; $DB['host'] = "localhost"; $DB['user'] = "root"; $DB['pass'] = ""; // Establish a connection to the database $link = mysqli_connect($DB['host'], $DB['user'], $DB['pass'], $DB['dbName']); // Query execution function function executeQuery($sql) { $result = mysqli_query($link, $sql); if (mysqli_error($link)) { $error = '<BR><center><font size="+1" face="arial" color="red">An Internal Error has Occured.<BR> The error has been recorded for review</font></center><br>'; if ($_SESSION['auto_id'] == 1) { $sql_formatted = highlight_string(stripslashes($sql), true); $error .= '<b>The MySQL Syntax Used</b><br>' . $sql_formatted . '<br><br><b>The MySQL Error Returned</b><br>' . mysqli_error($link); } die($error); } return $result; } // Example query $sql = 'SELECT auto_id FROM friend_reg_user WHERE auto_id=' . $info['auto_id']; $result_member = executeQuery($sql); if ($line_member = mysqli_fetch_array($result_member)) { extract($line_member); } else { header("location: index.php"); exit; } ?>
转换后完成后,测试您的脚本以确保一切正常运行。
以上是如何有效地从MySQL迁移到MySQLi?的详细内容。更多信息请关注PHP中文网其他相关文章!