<?php 
$numcolunas = 6;
 
$sql = mysql_query("SELECT guia_subcategoria.*, guia_categoria.*
FROM guia_subcategoria, guia_categoria
WHERE guia_subcategoria.cat_principal = guia_categoria.id"); 
$total = mysql_num_rows($sql); //Defini a quantidade de linhas antes 
if($total > 0) { //Depois só verifiquei se era maior que 0 
$numPorCol = floor(($total / $numcolunas)); 
while($dados = mysql_fetch_array($sql)) { 
$colsDatas['nome_cat'][] = $dados['4'];
$colsDatas['nome_subcat'][] = $dados['2']; 
}//Fecha while 
//Organiza os dados no array por colunas 
$h = 0; 
for($i = 0; $i < $numcolunas; $i++){ 
$til = $numPorCol + $h; 
for($h = $h; $h <= $til; $h++){ 
$colunasDeDados[$i]['nome_cat'][] = $colsDatas['nome_cat'][$h];
$colunasDeDados[$i]['nome_subcat'][] = $colsDatas['nome_subcat'][$h]; 
} 
} 
echo '<table>'; 
 
for($i = 0; $i <= $numPorCol; $i++){ 
echo '<tr>'; 
for($a = 0; $a < $numcolunas; $a++){ 
echo '<td><strong>'.$colunasDeDados[$a]['nome_cat'][$i].'</strong><br>';  
echo $colunasDeDados[$a]['nome_subcat'][$i].'</td>'; 
}//Fecha o segundo for 
echo '</tr>'; 
}//Fecha o primeiro for 
echo '</table>'; 
}?>Está gerando colunas tudo ok, porém ele gera assim:
Monte seu evento
Buffet
Monte seu evento
Flores
Monte seu evento
Aluguel de mesas
Preciso que ele gere assim:
Monte seu evento
Buffet
Flores
Aluguel de mesas
--------------------------
... e assim por diante, por favor se alguém me der uma luz ficarei grato, a dias estou rodando atrás de uma solução para isto.


 
	 
					 
			
			 
				
				
				 
			
			









