el antes del primer bucle se incluye el template para las categorias principales, y si se cumple la condicion pasa al segundo buble antes del cual se ingresa el template de las subcategorias. el problema es que toma el template de categorias solo para el primer registro, todo el resto lo ejecuta con el template de las subcategorias..
aqui esta el script
Código PHP:
$cID = '0';
$tr_sql = mysql_query("SELECT * FROM ".DB_PREFIX."templates WHERE tID = '".$theme."' && tmName = 'cat_list'");
$tr=mysql_fetch_array($tr_sql);
$tableRow=$tr["template"];
$sql = mysql_query("SELECT * FROM ".DB_PREFIX."categories WHERE cParent = '".$cID."' ORDER BY cOrder ASC");
while($r=mysql_fetch_array($sql))
{
$cat_ID=$r["cID"];
$cName=$r["cName"];
$cDesc=$r["cDesc"];
$scCount=$r["scCount"];
$cat_row = str_replace("{php=cat_id}", $cat_ID, $tableRow);
$cat_row = str_replace("{php=cat_name}", $cName, $cat_row);
$cat_row = str_replace("{php=cat_desc}", $cDesc, $cat_row);
echo $cat_row;
$valor=$_GET['action'];
if($valor=='category') {
$var= $_GET['id'];
} elseif($valor=='downloads') {
$dID=$_GET['id'];
$sqldow = mysql_query("SELECT cID FROM ".DB_PREFIX."downloads WHERE dID = '".$dID."'");
$d=mysql_fetch_array($sqldow);
$var=$d["cID"];
}
if($cat_ID == $var) {
if($scCount=='1')
{ $cID = $cat_ID;
$trs_sql = mysql_query("SELECT * FROM ".DB_PREFIX."templates WHERE tID = '".$theme."' && tmName = 'subcat_list'");
$trs=mysql_fetch_array($trs_sql);
$tableRow=$trs["template"];
$sqlsub = mysql_query("SELECT * FROM ".DB_PREFIX."categories WHERE cParent = '".$cID."' ORDER BY cOrder ASC");
while($r=mysql_fetch_array($sqlsub))
{
$cat_ID=$r["cID"];
$cName=$r["cName"];
$cDesc=$r["cDesc"];
$cat_row = str_replace("{php=cat_id}", $cat_ID, $tableRow);
$cat_row = str_replace("{php=cat_name}", $cName, $cat_row);
$cat_row = str_replace("{php=cat_desc}", $cDesc, $cat_row);
echo $cat_row;
}
}
}
}