Ver Mensaje Individual
  #6 (permalink)  
Antiguo 10/02/2010, 07:52
Avatar de vicram10
vicram10
 
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 9 meses
Puntos: 27
Respuesta: Ayuda con display PHP MySQL

Prueba lo siguiente, no puedo tener una demo, por que no se como esta conformado tus tablas..

Código PHP:
<?php
//Sacar las categorias
$cat mysql_query("SELECT * FROM cat_ad ORDER  BY $cat_name") or die(mysql_error());
echo 
'
<table>
    <tr>'
;
$i 1//Bandera    
$columnas 2;//Cantidad de columnas por fila
while($row_parent mysql_fetch_array($cat)){                
    
//Sacar las subcategorias
    
$subcat mysql_query("SELECT * FROM sub_cat_ad WHERE from_cat_ad = '".$row_parent['idCat_ad']."'") or die(mysql_error());
    
$count mysql_num_rows($subcat);
    
//Si no hay una relacion entre cat y sub cat   imprimimos la categoria
    
if($count == 0)
    {
        echo 
"<td>
                <h2><a href=\"#\">"
.htmlspecialchars($row_parent[$cat_name])."</a></h2>
              </td>"
;    
    }else{
        
//Sino imprimimos las cat y sus subcat
        
echo "<td><h2>"htmlspecialchars($row_parent[$cat_name])."</h2></td>";       
        echo 
'<table>';//Creamos la tabla para la subcategoria
        
while($row_child mysql_fetch_array($subcat))
        {    
            echo 
"<tr><td><a href=\"#\">"htmlspecialchars($row_child[$subcatName])."</a></td></tr>";
        } 
//end while subcat
        //Cerramos la tabla creada
        
echo '</table>';
    } 
//end if
    
$i++;//Aumentamos la Bandera
    //Imprimimos la nueva categoria en otra fila si ya hay mas de 2 columnas
    //Se hace columna + 1 por que de esta forma siempre mantiene 2, sino se le agrega la cantidad de columnas se
    //desconfigura, porque, nose preguntenle a él xDDDDD
    
if ($i==$columnas+1)
    {
        echo 
"</tr><tr>";//Imprimimos la nueva fila cerrando la actual
        
$i=1;//igualamos la bandera a 1 para la siguiente fila
    
}
}
//end while cat  
echo '
    </tr>
</table>'
;

?>
Es de probar a ver si te funciona, como dije, no tengo una demo para saber si funciona o no, pero en teoria deberia de funcionar..

Pd.: debes ver la parte de Comilla simple y doble, por que habia algunos errores en este aspecto en tu codigo..