【发布时间】:2012-09-08 22:01:05
【问题描述】:
我需要帮助以了解将在一种方法中创建的对象(MySQL 连接)传递给同一类中的另一种方法的正确方法。
我正在尝试创建一个使用构造函数和所有其他方法加载连接的数据库类,使用此连接来执行它们各自的功能。
在尝试这样做时,我不断收到此错误:
致命错误:在第 44 行的 /database.php 中的非对象上调用成员函数 query()
我的代码:
class database
{
public $mysqli;
public function __construct($database_server, $database_name, $database_user, $database_pass)
{
$mysqli = new mysqli($database_server,$database_user, $database_pass, $database_name);
if ($mysqli->connect_error)
{
die('Connect Error (' . $mysqli->connect_errno . ') '. $mysqli->connect_error);
}
echo "Database connection established successfully.<br>";
return $this->mysqli;
}
public function fetch_data()
{
$query = "select * from payment";
if ($result = $this->mysqli->query($query))
{
// fetch associative array
while ($row = $result->fetch_assoc())
{
printf ("%s (%s)\n", $row["id"], $row["status"]);
}
}
}
}
任何帮助将不胜感激。谢谢大家。
【问题讨论】:
标签: php mysql parameter-passing