php - Fetch array returns only one row -
<?php function comment($postid,$db_con) { $commentdiv=''; $sql="select userid,time,comment comments postid='$postid' limit 3"; $query = mysqli_query($db_con, $sql); while($row = mysqli_fetch_array($query,mysqli_assoc)){ $uid=$row["userid"]; $timecomment=$row["time"]; $comment=$row["comment"]; $sql="select username,photo users id='$uid'"; $query = mysqli_query($db_conx, $sql); $row = mysqli_fetch_array($query,mysqli_assoc); $username=$row["username"]; $photo=$row["photo"]; $userphoto='<img src="xxx/'.$username.'/'.$photo.'">'; if($photo== null){ $userphoto = '<img src="xxx/default.png">'; } $commentdiv.='<div class="xxxxxxx"><div class="yyyyyy">'.$userphoto.'</div><div class="zzzzz">'.$username.'</div><div class="vvvvv">'.$comment.'</div></div>'; } return $commentdiv; } ?> i new php, trying return 3 comments above php code, above code returns 1 row database, why fetch array return 1 row when there more 1 row?
try,i use $query2 = mysqli_query($db_conx, $sql); second query,because reset first loop
<?php function comment($postid,$db_con) { $commentdiv=''; $sql="select userid,time,comment comments postid='$postid' limit 3"; $query = mysqli_query($db_con, $sql); while($row = mysqli_fetch_array($query,mysqli_assoc)){ $uid=$row["userid"]; $timecomment=$row["time"]; $comment=$row["comment"]; $sql="select username,photo users id='$uid'"; $query2 = mysqli_query($db_conx, $sql); // added new variable $row = mysqli_fetch_array($query2,mysqli_assoc); $username=$row["username"]; $photo=$row["photo"]; $userphoto='<img src="xxx/'.$username.'/'.$photo.'">'; if($photo== null){ $userphoto = '<img src="xxx/default.png">'; } $commentdiv.='<div class="xxxxxxx"><div class="yyyyyy">'.$userphoto.'</div><div class="zzzzz">'.$username.'</div><div class="vvvvv">'.$comment.'</div></div>'; } return $commentdiv; } ?>
Comments
Post a Comment