BBCode 结束标记杀死 PHP mysqli 查询
BBCode ending tag kills PHP mysqli query
老实说,我不知道发生了什么。
它工作正常,直到我将结束标记放在 BBCode 标记上。
所以这可以正常工作:
$article = <<<EOF
<article>
<code>
[b]$title
</code>
</article>
EOF;
虽然这会终止整个代码并且不会打印任何结果:
$article = <<<EOF
<article>
<code>
[b]$title[/b]
</code>
</article>
EOF;
我通过将完全相同的代码放入普通旧 HTML 中进行了双重检查,它会很好地显示代码。我也试过 [/b]$title 并且成功了,我只是不能有开始和结束标签。
这是编码的其余部分:
require ("db_connect.php");
$residential = mysqli_query($db_connect,"SELECT * FROM residential ORDER BY id");
while ($row = mysqli_fetch_array ($residential)) {
include "results.php";
$title = "$row['title']";
echo $article;
}
尝试为您的循环使用不同的字符串类型和顺序,看看它是否有效:
results.php
$article = "
<article>
<code>
[b]{$title}[/b]
</code>
</article>";
或
$article = "
<article>
<code>
[b]".$title."[/b]
</code>
</article>";
或
ob_start();
?>
<article>
<code>
[b]<?php echo $title ?>[/b]
</code>
</article>
<?php
$article = ob_get_contents();
ob_end_clean();
然后在循环中:
while ($row = mysqli_fetch_array($residential)) {
$title = $row['title'];
include('results.php');
echo $article;
}
或者不在循环中包含该页面:
while ($row = mysqli_fetch_array($residential)) {
$title = $row['title'];
echo "
<article>
<code>
[b]".$title."[/b]
</code>
</article>";
}
老实说,我不知道发生了什么。
它工作正常,直到我将结束标记放在 BBCode 标记上。
所以这可以正常工作:
$article = <<<EOF
<article>
<code>
[b]$title
</code>
</article>
EOF;
虽然这会终止整个代码并且不会打印任何结果:
$article = <<<EOF
<article>
<code>
[b]$title[/b]
</code>
</article>
EOF;
我通过将完全相同的代码放入普通旧 HTML 中进行了双重检查,它会很好地显示代码。我也试过 [/b]$title 并且成功了,我只是不能有开始和结束标签。
这是编码的其余部分:
require ("db_connect.php");
$residential = mysqli_query($db_connect,"SELECT * FROM residential ORDER BY id");
while ($row = mysqli_fetch_array ($residential)) {
include "results.php";
$title = "$row['title']";
echo $article;
}
尝试为您的循环使用不同的字符串类型和顺序,看看它是否有效:
results.php
$article = "
<article>
<code>
[b]{$title}[/b]
</code>
</article>";
或
$article = "
<article>
<code>
[b]".$title."[/b]
</code>
</article>";
或
ob_start();
?>
<article>
<code>
[b]<?php echo $title ?>[/b]
</code>
</article>
<?php
$article = ob_get_contents();
ob_end_clean();
然后在循环中:
while ($row = mysqli_fetch_array($residential)) {
$title = $row['title'];
include('results.php');
echo $article;
}
或者不在循环中包含该页面:
while ($row = mysqli_fetch_array($residential)) {
$title = $row['title'];
echo "
<article>
<code>
[b]".$title."[/b]
</code>
</article>";
}