我试图找到相同的问题/答案,但无法弄清楚。获取错误 - 致命错误:调用成员函数prepare()null在
何时访问索引。提示错误
“致命错误:调用一个成员函数准备()对空的......”
----------------- -----------代码是------------------
------------- Page1- index.php文件
<?php
include 'inti_test.php';
$user_id =3;
$user = $getFromUserClass->userData($user_id);
?>
-------------------第2页,inti_test.php
<?php
$dsn = 'mysql:host=localhost; dbname=testdb';
$user = 'root';
$pass = 'mypass';
try{
$PDO = new PDO($dsn, $user, $pass);
}catch(PDOException $e){
echo 'Connection error!' .$e->getMessage();
}
//-------------------------
class User{
protected $pdo;
function __construct($pdo){
$this->pdo =$pdo;
}
public function userData($user_id){
$stmt = $this->pdo->prepare("SELECT * FROM `user_detail_master` WHERE
`user_id`=:user_id");
$stmt->bindParam(":user_id", $user_id, PDO::PARAM_INT);
$stmt->execute();
return $stmt->fetch(PDO::FETCH_OBJ);
}
}
//---------------------
global $pdo;
session_start();
$getFromUserClass = new User($pdo);
?>
'$ PDO'和'$ pdo'是__different__变量。 –
你有'$ PDO'用于连接和使用'$ pdo' –
首先,你必须首先在页面顶部开始'session',然后你犯一个错字'$ pdo'和'$ PDO'是两件不同的事情。 –