Boa tarde a todos, estou com uma dificuldade e gostaria da ajuda de vocês:
No exemplo exemplifico o que desejo fazer, onde a lista de itens vai preenchendo a coluna até 3 linas e após a lista continua em ordem na coluna posterior e assim por diante. Tente usar o código abaixo mas sem sucesso.
$sql = “SELECT
nome_completo
FROM
pessoas;”;
sc_lookup(ds,$sql);
if(!empty({ds})){
$lista = {ds[0][0]};
}else{
$lista = ‘erro’;
}
/*
Inicia o contador geral que será usado para comparar a quantidade de registros retornados do banco de dados.
/
$c = 0;
/
Inicia o contador de colunas
/
$i = 1;
/
Quantidade de colunas por linha
*/
$l = 3;
/*
Quantidade de registros retornados do banco de dados
*/
$rows = mysqli_num_rows($lista);
/*
Itera a consulta ao banco de dados
/
while ( $linha = mysqli_fetch_assoc($lista) )
{
/
Se o valor do contador de colunas $i for igual a 1, indica que uma nova linha deve ser aberta.
Se uma nova linha está sendo aberta, quer dizer que uma linha anterior deve ser fechada. No entando, é preciso verificar se já passou pela primeira linha, pois antes da primeira linha não há o que ser fechado.
Para verificar isso, podemos aproveitar o contador geral $c
*/
if( $i <= 1 )
{
if( $c > 0 ){
echo ‘’;
} // Fecha uma linha
echo ‘’; // Abre uma linha
}
/*
Escreve a coluna com o valor obtido da consulta ao banco de dados
*/
echo PHP_EOL . '<td>' . $linha["nome"] . '</td>';
/*
Checagem para incrementar ou resetar o contador de colunas.
*/
if($i <= $l )
{
/*
Incrementa o valor de $i para indicar que será escrita a próxima linha
*/
$i++;
}else{
/*
Reseta para o valor 1, pois será formada nova linha caso não tenha chegado ao final indicado pela condição $c == $row
*/
$i = 1;
}
/*
Incrementa o valor do contador geral.
Deve ser livre, sem condicionais.
*/
$c++;
/*
Verifica se encontrou o final da consulta.
Esse passo é muito importante para evitar que a última linha fique sem a tag de fechamento pois a quantidade de registros pode ser um número que não seja múltiplo do valor definido na variável $l
*/
if( $c == $row )
{
echo '</tr>';
}
}
Desde já agradeço muito pela ajuda.