2017-01-13 19 views
-2

私はPDOを初めて使用しており、私がここで扱っている問題に対する答えを見つけることができませんでした。
WHERE句のないテーブルにforeachループを実行することはできましたが、同様のテーブルWHERE句を使用してレプリケートすると、データが返されません。PDO foreachループが機能しません

ここでは動作しないコードです。私はまだORDER BYLIMITのパラメータなしでそれを実行しようとしましたが、まだ運がありません!ご案内ください。ここ

<div class="table-responsive"> 
    <table class="teachers_profile_table table table-bordered"> 
     <thead> 
      <th style="width:20%">Student</th> 
      <th>Comment</th> 
     </thead> 
     <tbody> 
<?php 
$pdo = Database::connect(); 
<?php 
$sql = "SELECT * FROM tbl_st_comments_abt_tut WHERE tut_id=?"; 
$q = $pdo->prepare($sql); 
$q->execute(array($teacher_id)); 
$data = $q->fetch(PDO::FETCH_ASSOC); 
foreach ($pdo2->query($sql) as $row) { 
    echo '<tr>'; 
    echo '<td>'.$row['st_name'].$row['input_date'].'</td>'; 
    echo '<td>'.$row['st_comment'].'</td>'; 
    echo '</tr>'; 
} 
Database::disconnect(); 
?> 
     </tbody> 
    </table> 
</div> 

は、DBテーブルである: テーブル名:tbl_st_comments_abt_tut ID tut_id st_id st_name st_comment input_date (I手動テスト目的のためにテーブルに3行に入っています)。

+0

?なぜあなたは2番目のものを開いていますか? –

+0

[ステートメントのデータを取得する。 foreach()](https://phpdelusions.net/pdo#foreach)。 $ q変数を反復処理する必要があります。 $ pdo2はちょうどノンセンスです。 –

+0

@MasivuyeCokileは問題ですか? –

答えて

0

私はこの行で何を達成しようとしているのか分かりません:foreach ($pdo2->query($sql) as $row) $ pdo2はどこから来ていますか?

あなたのCommon Senseのブログ記事に従うと、foreachが正しい場所にあることがわかります。また、foreachが表示される前に結果が得られるかどうかを確認することも重要です。

あなたのコードは次のようになります。あなたが最初のPHPタグを閉じた

<div class="table-responsive"> 
     <table class="teachers_profile_table table table-bordered"> 
       <thead> 
       <th style="width:20%">Student</th> 
       <th>Comment</th> 
       </thead> 
       <tbody> 
<?php 
$pdo = Database::connect(); 


$sql = "SELECT * FROM tbl_st_comments_abt_tut WHERE tut_id= ? "; 
$q = $pdo->prepare($sql); 
$q->execute([$teacher_id]); 
$data = $q->fetchall(PDO::FETCH_ASSOC); 

if (count($data) > 0) { 

    foreach ($data as $row) { 
     echo '<tr>'; 
     echo '<td>' . $row['st_name'] . $row['input_date'] . '</td>'; 
     echo '<td>' . $row['st_comment'] . '</td>'; 
     echo '</tr>'; 
    } 
} else { 

    echo "no results"; 
} 

Database::disconnect(); 
?> 
       </tbody> 
     </table> 
</div> 
+0

テーブル構造で質問を編集できるので、データが@Aliのように見えます –

関連する問題