![](/img/trans.png)
[英]Why does Codeigniters msqli driver return null as a query result while the mysql driver executes the query just fine?
[英]Why mysql while returning just one result?
我有用於顯示評論的代碼(很抱歉,我的最后一個問題)。
這樣包括在內; 所有變量都在另一頁中。
<?php
include("scripts/connect_to_mysql.php");
$tab_kom = "SELECT * FROM komenty WHERE stat_id = '$zdni_id' ORDER BY id DESC LIMIT 30";
$ukaz = '';
$res_kom = mysql_query($tab_kom);
$pocit = mysql_num_rows($res_kom);
if($pocit > 0) {
while($row_kom=mysql_fetch_array($res_kom)) {
$kom_uz_id = $row_kom['uid'];
$kom_text = $row_kom['text'];
$stat_id = $row_kom['stat_id'];
}
$tab_kom_uz = "SELECT * FROM uzivatele WHERE id = '$kom_uz_id' LIMIT 1";
$res_kom_uz = mysql_query($tab_kom_uz);
while($row_kom_uz=mysql_fetch_array($res_kom_uz)){
$kom_uz_ids = $row_kom_uz['id'];
$kom_uz_jm = $row_kom_uz['jmeno'];
}
$ukaz .=' '.$kom_text . ' ';
}else{
$ukaz .= '';
}
?>
我應該在變量$ zdni_id中有兩個具有相同ID的結果,但只顯示一個。 你知道為什么嗎?
while循環將覆蓋數據,因此您將獲得最后的結果,然后將其用於其余的IF
嘗試這個
while($row_kom=mysql_fetch_array($res_kom)) {
$kom_uz_id = $row_kom['uid'];
$kom_text = $row_kom['text'];
$stat_id = $row_kom['stat_id'];
$tab_kom_uz = "SELECT * FROM uzivatele WHERE id = '".$kom_uz_id."' LIMIT 1";
$res_kom_uz = mysql_query($tab_kom_uz);
while($row_kom_uz=mysql_fetch_array($res_kom_uz)){
$kom_uz_ids = $row_kom_uz['id'];
$kom_uz_jm = $row_kom_uz['jmeno'];
}
$ukaz .=' '.$kom_text . ' ';
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.