当我使用这个PHP编码时,我收到以下错误:
致命错误:第29行无法访问/connection.php中的空属性
class connectionClass
{
var $host = '';
var $user = '';
var $password = '';
var $db = '';
var $con
function __construct($flag)
{
if($flag == "local"):
$this->host = "localhost";
$this->user = "root";
elseif($flag == "remote"):
$this->host = "192.168.1.2";
$this->user = "root";
else:
echo "Incorrect connection flag.";
endif;
$this->password = $password;
$this->db = $db;
}
function connect()
{
$con = mysql_connect($this->host, $this->user, $this->password) or die(mysql_error());
mysql_select_db($this->db, $con) or die(mysql_error());
}
}
有什么建议吗?提前谢谢。
答案 0 :(得分:4)
类中的替代语法是什么?不好的做法 - 你不是在写模板。使用大括号。
很可能你的问题在这里:
$this->password = $password;
$this->db = $db;
您为类变量指定了$ password,但$ password不是构造函数中的参数。所以你的$ this->密码为空。 $ this-> db。
也存在同样的问题答案 1 :(得分:2)
问题在于你的构造'功能
查看第23行,' $ this-> db = $ db;'。确保使用值定义局部变量$ db。
注意:变量' $ password'的定义(第22行)也不见了。确保使用值定义它。