我的 pdo 结果在表中重复
Posted
技术标签:
【中文标题】我的 pdo 结果在表中重复【英文标题】:My pdo results are duplicating in Tables 【发布时间】:2016-03-23 07:00:51 【问题描述】:我有一个排行榜,它告诉我人们的钱(用于测试目的的虚拟货币)在哪些方面处于领先地位。 所以它起作用了,它通过 PDO (PHP Data Objects) 显示我的表中的所有内容。
问题是,我让它在表格中输出。但是对于每个 id,都会创建第二个这样的表:
我正在使用的代码:
<?php
$db = new PDO('mysql:host=localhost;dbname=test1','root','####');
$sql = "SELECT naam, id, days, money FROM user ORDER BY money DESC ";
$results = $db->query($sql);
foreach($results as $row)
?>
<html>
<head>
</head>
<body>
<TABLE BORDER="5" WIDTH="100%" CELLPADDING="4" CELLSPACING="3">
<TR>
<TH><BR><H3>POINTS LEADERBOARD</H3>
</TH>
</TR>
<TR>
<TH>Username</TH>
<TH>Money</TH>
<TH>Days</TH>
</TR>
<TR>
<TD><?php echo $row['naam']; ?></TD>
<TD><?php echo $row['money']?></TD>
<TD><?php echo $row['days']?></TD>
</TR>
</TABLE>
<?php
/*
echo "<table>";
echo "<TR>";
echo "<TH><BR><H3>POINTS LEADERBOARD</H3>";
echo "</TH>";
echo "</TR>";
echo "<TR>";
echo "<TH>Username</TH>";
echo "<TH>Money</TH>";
echo "<TH>Days</TH>";
echo "</TR>";
echo "<TR>";
echo "<TD>"; echo $row['naam']; echo "</TD>";
echo "<TD>"; echo $row['money']; echo "</TD>";
echo "<TD>"; echo $row['days']; echo "</TD>";
echo "</TR>";
echo "</table>";
*/
?>
<?php ?>
</body>
</html>
谁能帮助我或告诉我我做错了什么?
谢谢!
【问题讨论】:
请显示html周围的代码,例如循环 不可能是整个脚本 不,我现在更新了 请不要在外部网站上发布代码。目前尚不清楚您的代码将在那里停留多长时间。这将使您的问题(及其可能的解决方案)无法被未来的观众理解。 我知道,每次我尝试发布我的代码时,它都会格式化它编译过的代码...... 【参考方案1】:你在循环中打开 html
等标签的方式是错误的 - 可能是这样的?
<?php
$db = new PDO('mysql:host=localhost;dbname=test1','root','####');
$sql = 'SELECT naam, id, days, money FROM user ORDER BY money DESC ';
$results = $db->query($sql);
?>
<html>
<head>
<title>leaderboard</title>
</head>
<body>
<?php
echo "
<TABLE BORDER='5' WIDTH='100%' CELLPADDING='4' CELLSPACING='3'>
<TR>
<TH><BR><H3>POINTS LEADERBOARD</H3></TH>
</TR>
<TR>
<TH>Username</TH>
<TH>Money</TH>
<TH>Days</TH>
</TR>";
foreach($results as $row)
echo "
<TR>
<TD>$row['naam']</TD>
<TD>$row['money']</TD>
<TD>$row['days']</TD>
</TR>";
echo "</TABLE>";
?>
</body>
</html>
【讨论】:
这段代码工作了一半:D,它的工作方式如下:它不再复制它,但它只复制像 Username Money 和 Days 这样的表头 啊,我修好了,把 TH 也放在 Foreach 上面, 只将行放在循环内 @luc-stey 如果这解决了您的问题,请标记为这样。谢谢。以上是关于我的 pdo 结果在表中重复的主要内容,如果未能解决你的问题,请参考以下文章