问题:我有2个类,DB类和一个用户类,如果放在同一个类中,但是当我将它们分开时,我无法弄清楚如何让用户类使用DB类连接。PHP的操作系统不能很好地与对方沟通
我有'DBinterface'类和'用户'类。
*** dbinterface.php
<? class dbinterface {
var $dbHost,
$dbUser,
$dbName,
$dbPass,
$dbUserTable;
function User() {
$this->dbHost = 'host':
$this->dbUser = 'user';
$this->dbName = 'name';
$this->dbPass = 'pass';
$this->dbUserTable = 'table';
}
} // End dbinterface class definition ?>
*** user.php的
<?
include('dbinterface.php');
class User {
var $userID,
$userName,
$userPassword;
function registerUser($userName, $userPassword) {
// Connect to database
$dbLink = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
if(!$dbLink) die("Could not connect to database. " . mysql_error());
// Select database
mysql_select_db($this->dbName);
// Insert data
$query = "insert into $this->dbUserTable values (NULL, \"$userName\", \"$userPassword\")";
$result = mysql_query($query);
// Test to make sure query worked
if(!$result) die("Query didn't work. " . mysql_error());
// Get the user ID
$this->userID = mysql_insert_id();
// Close database connection
mysql_close($dbLink);
// Assign the values to the data members
$this->userName = $userName;
$this->userPassword = $userPassword;
} // End registerUser() ?>
PS:我已删除的安全性和其他mumbojumbo,方便易读性。 任何和所有的帮助是非常appriciated!
你不能只是“分开”类,并希望事情仍然是一样的。你的用户类正在引用现在处于完全不同类的东西,当然这不起作用。你需要真正考虑你想如何构建你的类... – deceze
感谢乐观,但不幸的是,我是PHP新手,仍然在学习。 – user1082764
@ user1082764这与php和更多与您的面向对象的设计和实现很少。我会建议在尝试使用它们之前学习OOP的基本原理。 – Shoan