我有以下代码(在 phpMyAdmin 中测试了 SQL 查询并且似乎有效),可以从选定的列中获取数据:
$ids = isset($_REQUEST['id']) ? $_REQUEST['id'] : array();
if (is_array($ids)) $ids = implode(',', $ids);
if (!empty($ids)) {
$sql = "SELECT upload, upload2, upload3, upload4, upload5 FROM wp_site_table WHERE cid IN($ids) ORDER BY FIELD(cid, $ids)";
$results = $wpdb->get_results($sql) or die(mysql_error());
foreach( $results as $result ) { ... } }
我遇到的问题是我想输出所选 cid 中的所有字段。
此代码只会显示第一个 cid 结果。
echo $result->upload;
假设 $ids 包含 cid 1、4 和 7,我想从所有这些特定行输出 upload、upload2、upload4、upload5。如何?以某种方式使用数组?
亲切的问候 约翰
最佳答案
如果您想回显所有字段,只需这样做:
echo $result->upload . '<br>' . $result->upload2 . '<br>' . $result->upload3 .
'<br>' . $result->upload4 . '<br>' . $result->upload5;
您也许应该考虑重新设计数据库,这样每一行中就不会出现重复的字段。最好有另一个表,其中每个上传
都位于其自己的一行中,因此这些值的数量没有硬编码限制。然后,您可以使用 JOIN
查询来获取所有上传
,它们将位于一个数组中。
关于php - 显示MySQL表中具有特定id的多个字段的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27267723/