【发布时间】:2015-03-08 19:10:56
【问题描述】:
我的连接:
<?php
$db = new mysqli('localhost', 'root', '', 'audiologiska_kliniken');
if($db->connect_errno > 0){
die('Ett fel inträffade [' . $db->connect_error . ']');
}
我的班级:
<?php
//Display model
require '../include/connect.php';
Class Display
{
function getData() {
mysql_set_charset('utf8');
if($result =$db->query= "SELECT * FROM patient left join person on person.Personnummer = Patient.Patient";`enter code here`
问题:该类无法识别$db。这是为什么呢?
【问题讨论】:
-
尝试在 $db 变量之前添加 global 关键字。不是最好的方法,但这是一个范围问题。我建议将connect.php代码放在一个类中,并为数据库连接创建一个静态函数,或者将它放在一个构造方法中,并使用连接类扩展显示类
-
因为它超出范围,你可以创建一个连接类并访问它,或者在构造函数中使用它
-
为什么不把 db 对象作为参数传递?
-
现在可以了,谢谢 :) 我仍然无法连接。我遵循上述评论的建议并创建了一个构造函数并将 Display 类扩展到它。但我不确定如何..