【发布时间】:2015-01-11 02:25:14
【问题描述】:
我真的很困惑从类内部与数据库交互的正确方法是什么,我知道我在下面做错了,但我仍然希望它至少可以工作?
class User{
public function user_email($user_id){
require_once("config/db.php");
$finduser = $db->query("SELECT email FROM `user` WHERE user_id = '".$user_id."' ");
$user_data = $finduser->fetch_assoc();
return $user_data["email"];
}
}
然后我使用下面的代码在另一个页面上显示结果,第一个实例工作正常,但第二个引发错误。
<?php echo $user->user_email($user_id); ?>
<?php echo $user->user_email($user_id); ?>
Notice: Undefined variable: db on line 89
Fatal error: Call to a member function query() on a non-object on line 89
所以我基本上要问的是,从一个与数据库的连接位于一个位置的类中连接到数据库的好方法是什么?
感谢您的帮助!
【问题讨论】:
-
它不起作用的原因是
require_once,它只需要一次。将require_once更改为require并且脚本将始终由方法user_email的任何后续调用加载。