php - 显示MySQL表中具有特定id的多个字段的数据

标签 php mysql

我有以下代码(在 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/

相关文章:

php - FFMPEG 转换

javascript - 在 PHP 邮件中发送由 javascript 创建的内容?

mysql - 扩展 SELECT IF 语句

mysql - 如何在 TextUtils.join 之后将连接的字符串转为列表

php - 是否有记录 GET/POST 参数的标准?

javascript - 网站不加载布局

php - 使用ffmpeg进行多遍编码的文本的正确方法是什么

java - 添加新的数据源(mysql)wildfly

php - 使用 AJAX + PHP 插入 MySQL 数据库

java - Android - 如何使用身份验证进行 MySQL 数据库事务?