我现在已经创建了这个脚本很长一段时间了,我又遇到了一个错误。这是代码块。
$query=$db->prepare("SELECT post_id, title, body, category FROM posts INNER JOIN categories ON categories.category_id=posts.category_id ORDER BY post_id DESC LIMIT $start, $per_page");
$query->execute();
$query->bind_result($post_id, $title, $body, $category);
while($query->fetch()):
$lastspace = strrpos($body, ' ');?>
<article>
<h2><?php echo $title?></h2>
<?php echo $category;?>
<?php echo "<br><br>";?>
<p><?php echo nl2br (substr($body, 0, $lastspace)). "<br><a href='post.php?id=$post_id'>Read More</a>"?></p>
<?php echo "<hr>"?>
</article>
<?php endwhile ?>
$ db变量是数据库连接。
“错误”显示在php echo nl2br
行,创建并添加substr
,$lastpace
和href
后,$body
将不会回声。当我删除那些脚本运行并且while循环得到$body
。
我没有任何错误或任何错误,$body
只会拒绝出现。
如果有可能,那就是友善的友好:)
什么是我的错误?
答案 0 :(得分:0)
分隔substr
和nl2br
调用,以避免错误导致循环。这样,如果$ body_sub为空为空,nl2br会警告你,但不会杀死脚本:
<?php
$body_sub = substr($body, 0, $lastspace);
echo nl2br($body_sub);
?>
此外,这纯粹是装饰性的,但您的代码看起来很混乱。为什么不让PHP回显你的HTML而不是在里面插入<?php ?>
标签?