Porqué no lo pruebas con el bucle while? Quizás es menos lioso que con los bucles For...
Ejemplo (fíjate solo en los múltiples while anidados y la llamada de los sql's):
Cita: $seleccionar_TOP_5 = mysql_query("SELECT * FROM products_description ORDER BY products_viewed DESC LIMIT 5;") or die (mysql_error());
$num_rows = mysql_num_rows($seleccionar_TOP_5);
while ($row = mysql_fetch_array($seleccionar_TOP_5))
{
$CArticle_TOP_5 = $row['products_id'];
$NomArticle_TOP_5 = $row['products_name'];
$seleccionar_PVP = mysql_query("SELECT * FROM products WHERE products_id=".$CArticle_TOP_5." LIMIT 1;") or die (mysql_error());
$num_rows = mysql_num_rows($seleccionar_PVP);
while ($row = mysql_fetch_array($seleccionar_PVP))
{
$PVP_Article=round($row['products_price'],2);
}
$seleccionar_URL_Article = mysql_query("SELECT * FROM uri_mappings WHERE associated_db_id=".$CArticle_TOP_5." LIMIT 1;") or die (mysql_error());
$num_rows = mysql_num_rows($seleccionar_URL_Article);
while ($row = mysql_fetch_array($seleccionar_URL_Article))
{
$URL_Article=$row['uri'];
$Enllac="http://www.exabyteinformatica.com".$URL_Article;
}
}