I have a function in php that builds an html string for a table so at inside I have a for loop
for ($counter = 0; $counter<10; $counter++){
$htmlString .= code for table row here;
}
The for loop only makes 5 rows and i even printed out the value of $counter and it says: 0, 2, 4, 6, 8
I have never seen this before and I can’t think of any way to fix this other than changing the loop from 10 to 20 but I rather know what is causing this so I can fix it for good.
here is my full code for the function i pass in a row from a sql db:
function BuildNetworkString($Query){
$NetworkHtml = "<table style='width:100%;'><tr>";
$counter = 0;
if($Query['FacebookID'] != '')
{
$NetworkHtml .= "<td style='width:10%; height:80px; text-align:center;'><a href='http://facebook.com/profile.php?id=" . $Query['FacebookID'] . "' class='black' title='Facebook - " . $Query['FacebookName'] . "'><img width='50px' src='Images/facebook.png'></a></td>";
$counter+=1;
}
for ($counter; $counter<10; $counter++)
{
$NetworkHtml .= "<td style='width:10%; height:80px>  ; $counter</td>";
}
$NetworkHtml .= "</tr></table>";
return $NetworkHtml;
}
Try changing:
to: