Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Problema em definir largura e disposição horizontal de tabelas com resultado de while
Como iniciante em programação estou tendo problemas para estilizar uma tabela dentro de um script PHP. Possuo o seguinte script:
<?php
$sql = 'SELECT * FROM psd_produtos';
$stmt = $conn->query($sql);
echo '<table>';
while($row = $stmt->fetch(PDO::FETCH_OBJ)){
echo "
<td>
<tr><h1>$row->prd_nome <br /></h1></tr>
<tr><p>$row->prd_detalhe <br /></p></tr>
<tr>$row->prd_valor <br /></tr>
</td>
";
}
echo '</table>';
?>
Ele funciona perfeitamente, buscando e produzindo um loop das informações que preciso, porém, gostaria que o resultado me retornasse em tabelas que ficasse dispostas horizontalmente lado a lado, e imaginei colocar uma classe CSS que estabelecesse a largura da tabela em 400px com um float que me permitiria alinhar o resultado em “4 colunas”. Porém, essa classe não funciona dentro do script.
Tentei echo '<table class="tabela-produto">'; e não funciona.
A mesma classe, que estabelece uma largura para a tabela, aplicada a uma tabela fora do script funciona e isso tirou minha dúvida se este tópico seria sobre CSS/HTML ou PHP.
Como posso fazer para obter meu objetivo com este script, alinhando horizontalmente o resultado do while em tabelas dispostas horizontalmente em 4 colunas?Oi Pessoal. Quero dizer que eu consegui resolver o problema que postei aqui com o seguinte código, adicionando ao echo que insere a tabela uma div no entorno:
while($row = $stmt->fetch(PDO::FETCH_OBJ)){
$imagem = $caminho . $row->prd_foto1;
echo"
<div class='tabela-produtos'>
<table border='0' cellspacing='5px'>
<tbody>
<tr class='tabela-produtos-td1'>
<td><img src='$imagem'/></td>
</tr>
<tr class='tabela-produtos-td2'>
<td><br/><br/><h1>$row->prd_nome</h1><br/></td>
</tr>
<tr class='tabela-produtos-td3'>
<td><h2>R$$valor</h2><br/></td>
</tr>
<tr class='tabela-produtos-td4'>
<td><p>$row->prd_detalhe</p><br/></td>
</tr>
<tr class='tabela-produtos-td5'>
<td>
<form>
<input name='COMPRAR' type='button' class='align-center' id='COMPRAR' value='Ver Detalhes'>
</form></td>
</tr>
</tbody>
</table>
</div>
";
}
@Aureo Almeida Bom dia,!
Cara, seu problema está no seu HTML e no CSS.
$resultato = [ { <!DOCTYPE html>