这个脚本错误,我无法找到$ homeRandom部分的位置,但我似乎无法弄清楚它是什么。
有没有一种在PHP中打印大量HTML的好方法?
$sqla = "SELECT * FROM Products";
$resulta = $conn->query($sqla);
if ($resulta->num_rows > 0) {
$homePage = '';
while($rowa = $resulta->fetch_assoc()) {
$nav = '<li><a href="'.$rowa['UrlPage'].'">'.$rowa['Name'].'</a></li>';
$homeRandom = '
<div class="col-sm-4 col-lg-4 col-md-4">
<div class="thumbnail">
<img src="./content/images/homepage/'.$rowa['ImageName'].'.jpg" alt="">
<div class="caption">
<h4 class="pull-right">'.$rowa['Price'].'</h4>
<h4><a href="'.$rowa['UrlPage'].'">'.$rowa['Name'].'</a>
</h4>
<p>'.$rowa['Description'].'</p>
</div>
</div>
</div>'
$homePage = $homePage . $homeRandom;
}
&#13;
答案 0 :(得分:1)
有没有一种在PHP中打印大量HTML的好方法?
是的,您可以使用alternative syntax for control structures开启和关闭php标签并提高可读性:
<?php if (condition) : ?>
<!-- HTML goes here -->
<?php endif; ?>
或者只是使用正常的if语句:
<?php if (condition) { ?>
<!-- HTML goes here -->
<?php } ?>
或heredoc方法:
echo <<<EOT
<p>My name is "$name". I am printing some $foo->foo.</p>
<p>Now, I am printing some {$foo->bar[1]}.</p>
<p>This should print a capital 'A': \x41</p>
EOT;
答案 1 :(得分:0)
你有一个缺少的半冒号,似乎是一个缺失的支具,但这可能只是你复制和粘贴的方式。
$sqla = "SELECT * FROM Products";
$resulta = $conn->query($sqla);
if ($resulta->num_rows > 0) {
$homePage = '';
while($rowa = $resulta->fetch_assoc()) {
$nav = '<li><a href="'.$rowa['UrlPage'].'">'.$rowa['Name'].'</a></li>';
$homeRandom = '
<div class="col-sm-4 col-lg-4 col-md-4">
<div class="thumbnail">
<img src="./content/images/homepage/'.$rowa['ImageName'].'.jpg" alt="">
<div class="caption">
<h4 class="pull-right">'.$rowa['Price'].'</h4>
<h4><a href="'.$rowa['UrlPage'].'">'.$rowa['Name'].'</a>
</h4>
<p>'.$rowa['Description'].'</p>
</div>
</div>
</div>'; //<-- missing in yours
$homePage = $homePage . $homeRandom;
}
} //<-- also missing in yours, but could just be a copy
//paste missed the last }
此外,您应该开始阅读错误日志,因为它会告诉您可以用来确定问题所在的好信息。 即 &#34;意想不到的&#39; $ homePage&#39; (T_VARIABLE)&#34; 意想不到的事情通常意味着它在它之前期待一些东西。
您还应该使用一个好的IDE,Netbeans,PHPStorm等,因为它们会返回有关您的代码的各种信息,例如错误下划线等