2つのファイル間のやりとりに問題があります。私はPHPでOOPを学んでいますが、私はまだ操作を理解していないいくつかのことがあります。エラーは次のとおりです。Notice:未定義の変数:db:16行目のC:\ wamp64 \ www \ projet \ connectDB.class.phpおよび致命的なエラー:C:\ wamp64 \ www \ projetのnullでprepare() \ライン上connectDB.class.php 162ファイル間のOOPのやりとり
の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事前に
solitionは '$ this'を使用しています。 –
'$ db'ではなく' $ this-> db'を使います。 – ShiraNai7
ok thx @ ShiraNai7とu_mulder $ thisが何を参照しているかを確認します。この考え方は理解できません。 – marzz