I’ve seen this question asked on this site, but mine has a slight variance that I haven’t seen answered. My code looks like this
$sql_broadcast = mysql_query("SELECT id, mem_id, bc, bc_date FROM bc WHERE
mem_id='$id' ORDER BY bc_date DESC LIMIT 50");
while($row = mysql_fetch_array($sql_broadcast)){
$mem_id = $row['mem_id'];
$bc = $row['bc'];
$bc_date = $row['bc_date'];
$bc_date = strftime("%b %d, %Y", strtotime($row['bc_date']));
$bc_display = '<table width="90%" align="center" cellpadding="4">
<tr>
<td width="93%">' .$bc_date. '<br />' .$bc. '</td>
</tr>
</table>';
}
?>
If I simply echo or print the table the loop works perfectly. However, I want to be able to print $bc_display inside the html page and when I do it that way only one result gets retrieved. I’m stumped, I’ve researched every thread that has been suggested and I’m still stumped. Thank you for the help!
You are overwriting
$bc_displayon every iteration (removing the previous stored result / row), you have to to do something like this:Make sure you set $bc_display to ‘nothing’ first (
$bc_display = '';on the first line of your code). *Also, you are creating a lot of tables, maybe this is a better alternative (though not what you asked):This will create only one table, with multiple rows instead of multiple tables having one row. This is better markup language, but not required.