我问的是,是否不仅可以从MySQL表中提取数据,还可以在表格或DIV中显示每一行,最好是DIV。我该怎么做?
表:
ID | BodyText | Title |
1 | Hello World1 | Title1 |
2 | Hello World2 | Title2 |
等。
我想把每一行放到一个有标题和bodytext的DIV中,但是我希望php生成这些表并将信息放入每个DIV。
可以吗?
答案 0 :(得分:7)
我们将此表用作示例数据集:
Database Name: friends
-----------------------------
| firstname || lastname |
----------------------------
|Chris || Geizz |
|Steve || Michalson |
|Ken || Bohlin |
|Doug || Renard |
-----------------------------
首先,您必须连接到您的数据库:
http://www.w3schools.com/PHP/php_mysql_connect.asp
您将运行MYSQL查询以从MySQL数据库获取数据:
$query = mysql_query("SELECT * FROM friends");
然后你将使用以下内容将它们放入表中:
echo "<table><tr><td>First Name</td><td>Last Name</td></tr>";
while($row = mysql_fetch_array($query))
{
echo "<tr><td>";
echo $row['firstname'];
echo "</td><td>";
echo $row['lastname'];
echo "</td></tr>";
}
echo "</table>";
这基本上做的是提取我的mysql_query返回的信息,并将其放入一个可以使用我们设置的$ row变量调用的数组。我们在while循环中执行此操作,以便重复数据库中的所有记录。
while循环之前和while循环之后的代码是这样的,所以它在一个表中,我们只是为数据库中的每一行创建行而不是单独的表。
这将完成你想要的。当您执行while循环时,您可以根据需要使用变量($ row ['firstname']和$ row ['lastname'])。如果你愿意的话,你可以将它们放在单独的DIV中。
希望这对你有所帮助!如果您有任何问题,请发表评论,我会回复。
答案 1 :(得分:5)
一旦你拥有行集,基本上你可以做任何你想做的事。这种代码的一般结构(如果没有分层/ MVC)看起来像这样:
connect to db
write query
retrieve results
loop for each row in resultset
{
echo html and column content as you wish
}
所以例如你可以使用
foreach ($rowset as $row)
{
echo '<div>'.$row['column1'].' is a friend of '.$row['column2'].'</div>';
}
答案 2 :(得分:0)
以下是如何访问/查询MySQL数据库的手册页:
使用那里的功能,您可以根据需要轻松查询和显示数据。如果您想要访问列信息(字段名称),您需要使用访问information_schema表或使用describe table之类的查询。
更新:根据评论,问题更多地与Tharkun的答案有关。
答案 3 :(得分:0)
<?php
$result = mysql_query("SELECT * from table");
if($result && mysql_num_rows($result))
{
$numrows = mysql_num_rows($result);
$rowcount = 1;
while($row = mysql_fetch_assoc($result))
{
print "<div><b>$rowcount</b>";
foreach($row as $var => $val)
{
print"|$var: $val|";
}
print "</div>";
++$rowcount;
}
}
?>