【发布时间】:2013-01-03 16:14:47
【问题描述】:
我在数据库上有一个选择,如下所示:
$result = mysql_query("
SELECT dat_eb_registrants.id, dat_eb_registrants.first_name,
dat_eb_registrants.last_name, dat_eb_registrants.email, dat_eb_registrants.comment,
dat_eb_registrants.amount, dat_eb_registrants.published,
dat_eb_registrants.transaction_id, dat_eb_registrants.register_date,
dat_eb_field_values.field_value
FROM dat_eb_registrants LEFT JOIN dat_eb_field_values
ON dat_eb_registrants.id=dat_eb_field_values.registrant_id
WHERE dat_eb_field_values.field_id='53' AND `event_id` >= 20 AND `event_id` <= 25
ORDER BY $sort $ascdsc
");
它会显示在一个 html 表格中,如下所示: 回声“ ID 名 姓 电子邮件 评论 价值1 价值2 价值3 ";
while ($row = mysql_fetch_row($result)) {
echo "<tr>";
echo "<td>" . $row[0] . "</td>";
echo "<td>" . $row[1] . "</td>";
echo "<td>" . $row[2] . "</td>";
echo "<td>" . $row[3] . "</td>";
echo "<td>" . $row[4] . "</td>";
echo "<td>" . $row[9] . "</td>";
echo "<td>" . $row[?] . "</td>";
echo "<td>" . $row[?] . "</td>";
echo "</tr>";
echo "</table>";
}
现在,前 4 个值已正确显示,就像第 5 个一样,但是第 6 个和第 7 个呢?它们没有被 MYSQL 调用,因为 dat_eb_field_values.field_value 只被调用一次,并且被赋值为 WHERE dat_eb_field_values.field_id='53
如何使用数据库中的其他值完成表格?
提前致谢,劳伦特
【问题讨论】:
-
调用 'dat_eb_field_values.field_id='53' OR
event_id>= 20 '而不是使用 'AND' 会有所帮助。还是应该在这里放一些表格数据让我们更了解你?? -
好像忘记了,我编辑了!
-
event_id>= 20 与字段值无关,只是用来排序的。 -
请注意,
mysql_xxx()函数已从 PHP 中正式弃用。多年来,它们一直被认为过时且不安全,但现在使用它们绝对是不好的做法。如果可能,您应该改用mysqli_xxx()函数或 PDO 库。