将mySQL转换为mySQLi - 使用类
问题描述:
以前的程序员使用过一个名为database的类,它具有连接字符串和一堆函数。我现在必须将其转换为MySQLi,并且我不知所措。将mySQL转换为mySQLi - 使用类
class database {
var $sql='';
var $result='';
function database($host='localhost', $user, $pass, $db) {
// perform a number of fatality checks, then die gracefully
if (!function_exists('mysql_connect')) {
//or die('FATAL ERROR: MySQL support not available. Please check your configuration.');
exit();
}
bla..bla..bla - bunch of code goes here
function get_events_by_user($username) {
$sql = "SELECT event_id FROM user_events WHERE username = '$username'";
$result = mysql_query($sql);
return $result;
}
}
我试图
var $link=mysqli_connect('localhost', $user, $pass);
为
$result = mysqli_query($link,$sql);
使用,但我不能使用表达式作为变量的值,我不知道自己还能做些什么。
非常感谢! :)
答
尝试使用此。 我认为它解决了您的问题。
<?php
$link = mysqli_connect("localhost", $user, $pass, $databaseName);
if (!$link) {
die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());
}
mysqli_set_charset($link, "utf8");
?>
答
只是在每个查询中带上$ link。
$link = mysqli_connect("localhost", $user, $pass, $db);
function get_events_by_user($username) {
$sql = "SELECT event_id FROM user_events WHERE username = '$username'";
$result = mysqli_query($link,$sql);
return $result;
}
开始与手动http://php.net/manual/en/book.mysqli.php并记住要通过连接作为参数传递给你的方法。否则,你会得到一个超出范围的问题。 –
如何将连接作为参数传递给我的方法? – Natalia