【发布时间】:2017-05-28 14:19:42
【问题描述】:
我是 PDO 的新手,我在这里找不到我正在处理的问题的答案。
我能够在没有WHERE 子句的表上运行foreach 循环,但是当我将它复制到一个类似的表with WHERE 子句上时,它不会返回任何数据! p>
这是不起作用的代码。我什至尝试在没有ORDER BY 和LIMIT 参数的情况下运行它,但仍然没有运气!请指导。
<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>
这是数据库表: 表名:tbl_st_cmets_abt_tut ID tut_id st_id st_name st_comment 输入日期 (出于测试目的,我在表格中手动输入了 3 行)。
【问题讨论】:
-
你在哪里关闭了第一个 php 标签?为什么要开第二个?
-
Getting data out of statement. foreach()。你必须遍历 $q 变量。而 $pdo2 只是一个随机数
-
@MasivuyeCokile 重要吗?
-
@YourCommonSense 我在第二次打开 php 标签时遇到错误
-
@MasivuyeCokile 如果您对基本 PHP 有疑问,您必须提出自己的问题。