[英]How to get all columns as rows in MySQL + PHP
I have a table in MySQL DB like this one: 我在MySQL DB中有一张这样的表:
> NAME | VALUE
>--------------------
> Jon | 0.2
> Galson | 0.34
> Sam | 0.5
I need to display this table in my web app with something like this: 我需要在Web应用程序中显示此表,如下所示:
> NAME | Jon | Galson | Sam
> VALUE | 0.2 | 0.34 | 0.5
I just want to convert database column into rows using MYSQL + PHP only for display purpose. 我只想使用MYSQL + PHP将数据库列转换为行,仅用于显示目的。
You should not be doing this using a (probably complex) SQL query. 您不应该使用(可能很复杂的)SQL查询来执行此操作。 Instead rely on HTML/CSS for this:
而是依靠HTML / CSS:
Assuming 假设
$data = [{name: 'Jon', value: 0.2}, {name: 'Galson', value: 0.34}, {name: 'Sam', value: 0.5}]
you could 你可以
foreach($data as $person) {
echo '<div class="person">';
echo '<div class="name">' . $person->name . '</div>';
echo '<div class="value">' . $person->value . '</div>';
echo '</div>';
}
and 和
.person {
float: left;
}
Also don't , never ever, under any circumstances, build HTML like that. 也不要 ,永远不会在任何情况下,建立HTML这样的。 Use some kind of templates.
使用某种模板。
You should check out @Sergiu Paraschiv answer. 您应该查看@Sergiu Paraschiv的答案。 What you definitely do not want to do is use the deprecated
mysql_db_query()
. 您绝对不希望使用已弃用的
mysql_db_query()
。 Alternatively try something like this: 或者尝试这样的事情:
<?php
$db = new PDO('mysql:host=localhost;dbname=testdb;charset=utf8', 'username', 'password');
$stmt = $db->query('SELECT name, value FROM table');
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
$output = [];
foreach($results as $row) {
$output[$row['name']] = $row['value'];
}
print_r($output);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.