我遇到了2个文件之间的交互问题。我在PHP上学习OOP,但有一些事情我仍然不理解这个操作。错误是注意:未定义的变量:第16行的C:\ wamp64 \ www \ projet \ connectDB.class.php中的db和致命错误:在C:\ wamp64 \ www \ projet中调用null上的成员函数prepare()第16行的\ connectDB.class.php
的index.html:
<?php
require_once('connectDB.class.php');
try
{
$conn = new Connection('xe','copie_tdf','copie_tdf');
}catch (PDOException $err){
echo "Err " . $err->getMessage();
}
$sql="SELECT nom,prenom FROM tdf_coureur";
$result=$conn->selectdb($sql);
foreach ($result as $r)
{
echo $r->NOM." ".$r->PRENOM."<br/>";
}
?>
connectDB.class.php:
<?php
class Connection extends PDO{
protected $db;
public function __construct($dbname, $dbuser, $dbpass, $dbtype = 'oci')
{
$db = new PDO($dbtype.':dbname='.$dbname, $dbuser, $dbpass);
}
public function selectdb($querySelect)
{
$db->beginTransaction();
$select = $db->prepare($querySelect);
$select->execute();
$resultat=$select->fetchAll(PDO::FETCH_OBJ);
return $resultat;
}
}
?>
我希望你能找到解决方案,因为我没有看到任何解决方案与我目前的知识。 Thx事先
答案 0 :(得分:0)
如评论中所述
protected $db;
public function __construct($dbname, $dbuser, $dbpass, $dbtype = 'oci')
{
$this->db = new PDO($dbtype.':dbname='.$dbname, $dbuser, $dbpass);
}
$ this:指的是类的实例