将mysql行中的数据显示为php中的一列

时间:2013-10-03 16:53:29

标签: php mysql

我有一个问题,我几个小时都在苦苦挣扎!我正在尝试创建一个网站来显示慈善机构寻宝者的搜索结果。

我在包含我的数据的mysql数据库中有一个表;第一列包含每个人的姓名,每个后续列显示他们收集的每个对象的数量(我已经包含了一张图片,无论如何都要更好地解释)。

表1:
http://i.imgur.com/U69IqiY.jpg

我正在尝试使用PHP在表格中显示这些数据,但我只能按照我在第一张图片中发布的方式来表示它。我想选择一个人的数据并将其显示在一个包含两列的垂直表中,左列显示每个对象的名称,右列显示他们收集了多少对象(我已经放了一张图片这也是。)

表2:
http://i.imgur.com/gverhcw.jpg

这让我疯了几个小时,所以任何帮助都会非常感激!

3 个答案:

答案 0 :(得分:0)

基本上,只要您知道名称= Fred,就可以这样做:

select * from your_table where name = 'Fred'

然后循环显示每个项目的单个结果集。

您最好显示更多代码,如何连接数据库等等

答案 1 :(得分:0)

我无法从工作中得到什么,但你想做这样的事情:

(假设您将结果绑定到这些变量)

echo "<table>"
while($resultsFromQuery->fetch()){
echo "<tr><td colspan=2>".$name."</td></tr>";
echo "<tr><td>item 1</td><td>".$item1."</td></tr>";
echo "<tr><td>item 2</td><td>".$item2."</td></tr>";
...
echo "<tr><td>item n</td><td>".$itemn."</td></tr>";
}
echo "</table>

答案 2 :(得分:0)

我正在做假设,请记住在尝试新代码之前始终备份数据库。从经验谈起。

如果您使用的是PHP和MySQLi,请尝试以下操作,如果您想显示包含所有这些内容的表,那么您可以使用该代码,我假设您将转到另一个页面来显示单个表论坛人

以下是我要做的事情,当您点击某个名称时,请将其转到person.php?person=Fred

这样的网页

这是我将用于该页面的代码:

//Your DB connection details go here.
$sql = "SELECT * FROM table WHERE name = '$_GET[person]'";
$sql_con = mysqli_query($con, $sql);
$data = mysqli_fetch_array($sql_con);
echo '<h2>Data for '.$data['name'].'</h2><br />';
echo '<table><tr><th>Items</th><th>Count</th></tr><tr>'; // SET UP YOUR TABLE
echo '<td>Item 1</td><td>'.$data['item1'].'</td></tr><tr>';
echo '<td>Item 2</td><td>'.$data['item2'].'</td></tr>'; // CONTINUE FOR EVERY ITEM YOU HAVE
echo '</table>';

应该这样做,如果那不是你想要的,请告诉我。