【问题标题】:Php Echo ConcatenationPhp 回声连接
【发布时间】:2009-10-16 23:12:50
【问题描述】:

我有一个巨大的表可以放入 while 循环中,但我发现很难将它连接起来。如何添加更多的多行?

<?php
$dbhost = 'xxxx';
$dbuser = 'xxxx';
$dbpass = 'xxxx';
$dbname = 'xxxx';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname, $conn);

$result = mysql_query("SELECT * FROM table", $conn);

while ($row = mysql_fetch_array($result)) 
{
    echo '<tr align="center"><td width='200'>' . htmlspecialchars($row['Picturedata']) . '</td>';
    echo '<td width="700"><h1>' . htmlspecialchars($row['name'] . '</td>' ;    
}

?>

我得到语法错误,意外的';'

【问题讨论】:

  • 这次你错过了一个)
  • 你还有一个标题的打开标签,没有关闭标签

标签: php mysql


【解决方案1】:

在发布的代码中,此行在['name'] 之后缺少右括号:

echo "<td width='700'><h1>" . htmlspecialchars($row['name'] . "</td>" ;  

应该是

echo "<td width='700'><h1>" . htmlspecialchars($row['name']) . "</td>" ;  

【讨论】:

    【解决方案2】:

    更新: 您在 while 循环中的第二个回显中缺少一个 ')'。

    您发布的代码在我看来完全有效。也许您的文件中的其他地方有问题或缺少分号?

    【讨论】:

    • 我同意问题可能在代码中更进一步,它可能是缺少 ' 或 "
    • 不,它说有一个意外的';'在第二个回声线:/
    • @Joe 发布整个文件,以便我们查看。
    • ooooops.. 感谢您的帮助
    【解决方案3】:

    请注意,echo 实际上并没有在输出中添加新行。如果您想在 HTML 输出中添加一个新行(尽管由于 HTML 处理新行的方式,它在浏览器中不可见),那么您可以执行类似

    echo '<td> blah </td>
    <td> blah </td>
    ';
    

    或者您可以在双引号字符串中使用\n:

    echo "<td> blah </td>\n<td> blah </td>\n";
    

    或

    echo "<td> blah </td>\n";
    echo "<td> blah </td>\n";
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-22
      • 1970-01-01
      • 1970-01-01
      • 2015-09-19
      相关资源
      最近更新 更多