Ver Mensaje Individual
 
Antiguo 21/11/2007, 16:30
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: explotar una cadena y hacer un bucle con el resultado

rogertm, crees que por gusto escribi todo ese codigo?

Código PHP:
while () {
    foreach () {
        while () {
            
//Codigo A
        
}
    }
} 
Estas loco? Cuántas veces quieres que se ejecute el codigo A? Estas bromeando no???

Jaja man, es broma. Pero es serio ... La razón por la que puse la consulta fuera del bucle es porque así te ahorrarás muchas consultas a la base de datos, todas pidiendo las mismas columnas de diferentes filas. Si hicieras una consulta unica, que te genre un array con todos los datos que vas a necesitar... Te aseguro que tiu servidor te lo agradecerá...

Código PHP:
// Obtenemos las categorias de la noticia
$sqlQuerySubcategorias = mysql_query("SELECT noticia_ID, noticiaSubcategoriaID FROM noticias WHERE noticia_ID = '{$row['noticia_ID']}'", $db_link) or die(mysql_error());
$rowSubcategorias = mysql_fetch_assoc($sqlQuerySubcategorias);
 
//Creamos un array que contenga los datos necesarios SOLO para las 
//categorias que vamos a usar
$cats = mysql_query("SELECT subcategoria_ID, subcategoriaSubcategoria FROM subcategorias WHERE subcategoria_ID IN ($rowSubcategorias['noticiaSubcategoriaID'])", $db_link) or die(mysql_error());
$catlist = array();
while(
$tmpcats = mysql_fetch_object($cats)) {
    
$catlist[$tmpcats->subcategoria_ID] = $tmpcats->subcategoriaSubcategoria;
}
 
$subCategoria = explode(",", $rowSubcategorias['noticiaSubcategoriaID']);
 
foreach(
$subCategoria as $subcatID){
    
//En vez de consultar nuevamente a la BD, buscamos en nuestro array
    
echo "<a href='#$subcatID'>{$catlist[$subcatID]}</a>";
} 
Ya sabes... Lo tomas o lo dejas

Un saludo,

Última edición por okram; 21/11/2007 a las 16:36