Ce n'est pas la première fois que je vois ce genre de code pour afficher les résultats d'une requêtes SQL sans séparateur pour le dernier élément :

$q = mysql_query("SELECT color FROM cats");
$nb = mysql_num_rows($q);
$i=0;
while(list($color)=mysql_fetch_row($q)) {
  if ($i == 0) echo 'Couleurs : ';
  echo $color;
  $i++;
  if ($i<$nb) echo ', ';
}

Alors voici un code plus simple pour faire la même chose, extensible à tout type de séparateur (ligne de tableau notamment) :

$colors = array();

$q = mysql_query("SELECT color FROM cats");

while(list($color) = mysql_fetch_row($q)) 
  $colors[] = $color;

if (sizeof($colors)>0) 
  echo 'Couleurs : '.join(', ',$colors);