2016-11-17 17 views
1

私のコードの一部に問題があります。私は何も示さなかったデータベースPHP |準備/実行が機能しませんでした

<?php 
require_once 'db.php'; 
$res = $bdd->query("SELECT * FROM bien"); 
$res2 = $bdd->prepare("SELECT * FROM bien_option WHERE id_bien=:id"); 
?> 
<html> 
<head> 
<meta charset="utf-8"> 
</head> 
<h2>Mes Biens:</h2> 
<?php 

while($mesBiens = $res->fetch()){ 
    echo '<h3>Nom : '.$mesBiens['nom'].'</h3>'; 
    echo 'Type : '.$mesBiens['type'].'<br/>'; 
    echo 'Prix : '.$mesBiens['prix'].'€<br/>'; 
    echo 'Surface : '.$mesBiens['surface'].'m²<br/>'; 
    while($mesOptions = $res2->fetch()){ 
     $res = $bdd->execute(array(':id'=>$mesBiens['id'])); 
     echo $mesOptions['nom']; 
    } 
} 



?> 

echo mesOptions['nom']にいくつかの例を追加し、私は、エラーメッセージを受信して​​いません。

+0

私はこれを取得するしばらく前にそれを追加したとき:(!) – bezoo

+0

致命的なエラー:不明なエラー:未定義のメソッドPDOへの呼び出し::実行()!18行目のC:\ wamp64 \ www \ ex1 \ index.phpのエラー:C:\ wamp64 \ www \ ex1 \ index.phpの18行目の未定義メソッドPDO :: execute()を呼び出す – bezoo

+0

「BDDにいくつかの例を追加しました」 - 質問にBDDに関連するものは何も表示されません。 – Quentin

答えて

2

あなたの声明を実行する必要があります。

これは、データベースから直接照会:

$res = $bdd->query("SELECT * FROM bien"); 

これは、サーバー上の声明を準備します。次回にたくさんのこれらのクエリを送信することをデータベースに伝えると考えてください。それが効率的ですので、データベースがこの文を「コンパイル」ん:データベースが使用してSQLを実行し、この時点で

$statement->bindParam(':id', $id, PDO::PARAM_INT); 
$statement->execute(); 

:(:ID)とexecute it

$statment = $bdd->prepare("SELECT * FROM bien_option WHERE id_bien=:id"); 

は今、あなたは値をバインドする必要がありますあなたのパラメータとあなたが今コールする必要がある、あなたのための結果を準備:

$result = $statement->fetchAll(); 

それとも、あなたはループの中でそれを持っていることを好む場合:

while($mesBiens = $statement->fetch()) { ... } 

クエリを頻繁に繰り返す場合、文を準備することは非常に意味があることに注意してください。

0

ので、私はちょうどいくつかのものを編集し、それが仕事だ:)

while($mesBiens = $res->fetch()){ 
    echo '<h3>Nom : '.$mesBiens['nom'].'</h3>'; 
    echo 'Type : '.$mesBiens['type'].'<br/>'; 
    echo 'Prix : '.$mesBiens['prix'].'€<br/>'; 
    echo 'Surface : '.$mesBiens['surface'].'m²<br/>'; 
    $options = $res2->execute(array(':id'=>$mesBiens['id'])); 

    while($mesOptions = $res2->fetch()) { 
     echo 'Option: '.$mesOptions['nom'].'<br/>'; 
    } 
} 
関連する問題