$data = array();
while($row = mysql_fetch_assoc($july)) {$data['row'][] = $row;}
while($row = mysql_fetch_assoc($aug)) {$data['row2'][] = $row;}
while($row = mysql_fetch_assoc($sept)) {$data['row3'][] = $row;}
$count = count($data['row']);
for($i=0;$i<=$count;$i++)
{
echo '<tr>';
if(($i % 3) == 1)
{
echo "<td>" . $data['row3'][$i]['cUsername'] . "</td>";
echo "<td>" . $data['row3'][$i]['postCount'] . "</td>";
}else if(($i % 2) == 1)
{
echo "<td>" . $data['row2'][$i]['cUsername'] . "</td>";
echo "<td>" . $data['row2'][$i]['postCount'] . "</td>";
}else /*Never try find remainder of 1 as theres always a multiple of 1*/
{
echo "<td>" . $data['row'][$i]['cUsername'] . "</td>";
echo "<td>" . $data['row'][$i]['postCount'] . "</td>";
}
echo '</tr>';
}
3つの異なる行を同時にフェッチするのではなく、結果を個別にローカル配列にフェッチすることにより、結果を個別に実行してローカル変数に格納する必要があります。大きな配列の場合は、単語の後に変数の設定を解除するだけです。
私のコードはテストされていないものとして提供されています。