我有一些看起来像这样的PHP代码:
echo"
<tr>
<td colspan=\"2\">" . get_comment(${'imgmodp_data_' . $i}['primid']) . "</td>
</tr>
";
我的get_comment
功能:
function get_comment($primid)
{
$dbCon = mysqli_connect("localhost", "something", "something", "something");
$sql = "SELECT `id_sheep`, `text` FROM `comments` WHERE `primid`='$primid'";
$query = mysqli_query($dbCon, $sql);
while($row = mysqli_fetch_array($query))
{
return = "<div>" . $row['text'] . "</div></br>";
}
}
但是每次只返回一行,即使它们是多行。如果我使用echo
而不是return
,它会返回所有行,但是在文档的顶部,而不是应该在的块中...
有什么建议吗?
答案 0 :(得分:2)
在循环之前使用变量,在循环中更新并在循环之后返回。
如果你只是使用return,你将停止该功能,所以在1循环之后。
使用echo可以直接输出字符串,但不要停止循环。
例如:
function get_comment($primid){
$dbCon = mysqli_connect("localhost", "something", "something", "something");
$sql = "SELECT `id_sheep`, `text` FROM `comments` WHERE `primid`='$primid'";
$query = mysqli_query($dbCon, $sql);
$return = '';
while($row = mysqli_fetch_array($query)){
$return .= "<div>" . $row['text'] . "</div></br>";
}
return $return;
}
答案 1 :(得分:0)
这个怎么样?
echo "<div>" . $row['text'] . "</div></br>";
并将php代码放在您希望显示的位置。
<div class="row">
<div class="col-sm-12">
<div class="col-sm-6">
<!-- PHP code goes here -->
</div>
</div>
</div>