我试图从PHP中的表中返回一个基本列表但由于某种原因它将结果返回到一个长字符串而不是在新行上显示下一条记录。我前段时间做过类似的事情,但我不经常使用PHP,因此我猜测我错过了一个相当明显的错误。任何帮助表示赞赏。
我目前的代码是这样的。
<?php
require_once("dbconnect.php");
$query = "SELECT * FROM clients";
$dbRecords = mysql_query($query, $dbConnect)
or die("Problem reading table: " + mysql_error());
$clientName = $dbRecords["clientName"];
while ($arrRecords = mysql_fetch_array($dbRecords))
{
$clientName .= $arrRecords["clientName"];
}
?>
<div>
<?php
echo '<h2>Client List</h2>';
echo $clientName; echo'<br />'; echo'<br />';
?>
</div>
答案 0 :(得分:4)
不要做
$clientName = $dbRecords["clientName"];
因为$dbRecords
是结果集资源;只需将$clientName
初始化为空字符串,然后循环
$clientName = '';
while ($arrRecords = mysql_fetch_array($dbRecords)) {
$clientName .= $arrRecords["clientName"] . '<br />';
}
在循环中添加换行符(<br />
)
答案 1 :(得分:1)
为什么不尝试这样的事情?
<?php
require_once("dbconnect.php");
$query = "SELECT * FROM clients";
$dbRecords = mysql_query($query, $dbConnect)
or die("Problem reading table: " + mysql_error());
echo "<h2>Client List</h2>";
while ($arrRecords = mysql_fetch_array($dbRecords)) {
echo $arrRecords["clientName"] . "<br />";
}
?>
此外,请不要再使用mysql_ *函数,因为它们已被弃用。查看MySQLi或PDO。
答案 2 :(得分:0)
你可以这样做:
<?php
require_once("dbconnect.php");
$query = "SELECT * FROM clients";
$dbRecords = mysql_query($query, $dbConnect)
or die("Problem reading table: " + mysql_error());
while ($arrRecords = mysql_fetch_array($dbRecords))
{
$clientName[] = $arrRecords["clientName"];
}
?>
<div>
<?php
echo '<h2>Client List</h2>';
echo implode('<br />',$clientName);
?>
</div>
答案 3 :(得分:0)
试试这个,这个例子可以帮助您方便输出
<?php
require_once("dbconnect.php");
$query = "SELECT * FROM clients";
$dbRecords = mysql_query($query, $dbConnect)
or die("Problem reading table: " + mysql_error());
$clientName[] = $dbRecords["clientName"];
while ($arrRecords = mysql_fetch_array($dbRecords))
{
$clientName[] = $arrRecords["clientName"];
}
?>
<div>
<?php
echo '<h2>Client List</h2>';
echo implode('<br />', $clientName); // Output line break
?>
</div>
通过这种方式,您可以轻松打印包含换行符,项目符号列表等的列表。我希望这会有所帮助。
谢谢。