Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RollySantos

Tabela em foreach

Recommended Posts

Gente, tudo bem?

 

Estou tentando colcoar uma tabela para funcionar em foreach e não estou conseguindo. Certa vez me ajudaram a fazer em while e eu consegui fazer funcionar beleza.

Mas agora, precisava fazer em foreach, tem como alguem me dar uma força?

<table width="auto" border="0" cellspacing="0" cellpadding="0">
    <?php foreach ($imagens as $id =>$image): ?>
       <?php if (preg_match($CodigoCli, $image) != ""){ ?>
          <?php if (preg_match($tamanhoH, $image) || preg_match($tamanhoV, $image)){ ?>
          
			<?php	if ($contador >= 0) { ?>
		  			<tr>
		   		<?php } ?> 
    				<td><img src="<?php echo $Diretorio ?>/<?php echo $image ?>"><br /><label><input type="checkbox" name="imagens[<?php echo $id ?>]" value="<?php echo $image ?>"></label> 
    - <?php echo $image ?></td>
            
      		<?php $contador ++;
      		 if ($contador >= 3) { ?>
		  	</tr>
            <?php $contador = 0;
		   } 
      	} 
	 } 
     endforeach ?>
    </table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entenda a lógica da coisa... copiar/colar sem ler e entender te leva do nada a lugar algum...

 

Enfim, primeiro, o que o script está fazendo que não deveria ou não está fazendo e que deveria fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não me deram o script da outra vez. Apenas me ajudaram em como era o processamento e onde eu estava errando.

E no que estou fazendo agora, ele está quase funcionando como eu planejava. A diferença é que quando eu fiz em while coloquei um if e else if calculando o loop. E o script ficou enorme. Então, estou fazendo esse que é bem diferente no foreach.

 

Só que o que acontece é que estou colocando para fazer uma célula na coluna 1, ele fecha o <td> e vai para baixo.
Minha intenção é fazer a coluna 1, 2 e 3, então o contador vai para 3 e fecha o <tr> passando para próxima linha.

 

Então ao invés de fazer três colunas e passar para próxima linha, ele está fazendo tudo em uma linha só.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque:

<?php if ($contador >= 0) { ?>

Por:

<?php if ($contador == 0) { ?>

E lembre-se de criar a variável $contador com valor igual a zero antes de iniciar o laço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque:

<?php if ($contador >= 0) { ?>

Por:

<?php if ($contador == 0) { ?>

E lembre-se de criar a variável $contador com valor igual a zero antes de iniciar o laço.

 

 

Eu criei as variáveis, é q o script completo é grande.

 

Valeu!

Eu só não estava enxergando onde estava errando!

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por babylon
      Olá galera tudo bem?
      Deixa eu perguntar, estava mexendo no meu site e queria adicionar em html essa tabela porem esta dando erro pois fica assim:
       

      Porem gostaria que ficasse assim:

      Segue o código da tabela:
      <center><table border="0">
          <tr>
      <td bgcolor="#0092df" width="24%"><a href="/categorias?ename=smartphones"><span style="font-size: 20px; color: #ffffff;"><b> <font color="#0092df">..</font>Bicicleta<br> <font color="#0092df">..</font>Track Bikes<br> <font color="#0092df">..</font>Aro 29 TKS</b></a></span><br><br><font size="5"><center><span style="background-color: #A1CD44">DE:</span></font> <br><font size="5"><s>R$ 1.999,99</center></font></s> </td><td><p><a href="/categorias?ename=smartphones"><img src="/static/img/itembicicleta.jpg"><br><font size="5"><center><span style="background-color: #A1CD44">COM - 60%:</span></font> <br><font size="5">1.199,99</font></center></a></td>
             <td><font color="#ffffff">....</font></td>
              <td bgcolor="#0092df" width="24%"><a href="/categorias?ename=smartphones"><span style="font-size: 20px; color: #ffffff;"><b> <font color="#0092df">..</font>Monitor 24"<br> <font color="#0092df">..</font>Samsung<font color="#0092df">aa.aa</font><br> <font color="#0092df">..</font>1ms 144hz</b></a></span></center></td><td><p><a href="/categorias?ename=smartphones"><img src="/static/img/itemmonitor.jpg"></a></td>
          </tr>
          </table></center>
      O que estaria errado, pois não sei como colocar nessa tabela outro fundo de outra cor, veja que usei td bgcolor="#0092df" para o azul escuro mas não sei como usaria pro "#e4f1fb" para o fundo ficar de azul claro em baixo bem como não ficou correto em altura o "DE:" com o "COM - 60%:".
      Bom é isso, obg.


    • Por Willian Simione
      Boa Noite, alguem poderia me ajudar em uma situação, estou tetnando gravar os dados da tela abaixo, porem nao estou conseguindo montar o jeito certo pra ele gravar todos os dados de uma vez

    • Por Giovanird
      Tenho uma tabela com a coluna média (valor decimal) .
       
      cod | media | cod_sala 1 1,98 5 2 2,34 2 3 1,32 5 4 2,51 3 5 1,65 1 6 2,78 5 7 4,95 4 8 0,75 4 9 1,23 1 10 1,63 2 11 1,55 3 Preciso no select MYSQL ou dentro do foreach multiplicar os valores do campo média, de acordo com o fitro por cod_sala
      Exemplo pelo cod_sala: 5
      Sendo o resultdo final: 1,98 * 1,32 * 2,78 = 7,26

      Desde já agradeço!
    • Por clovis.sardinha
      Bom dia.
      Meu problema é o seguinte:
      Estou fazendo uma tabela e preciso mostrar o usuário e várias cidades que pertencem a este usuário.
      O resultado do array é o seguinte:

      Quando passo para a tabela os valores de cidade se repetem para o mesmo usuário até o final e retorna fazendo o mesmo para o próximo usuário. 
      Veja abaixo

       
      Meu código para a tabela é a seguinte:
      <tr> <td align="left"><?php echo $usuario['nome'] ?></td> <td align="left"><?php echo $usuario['nome_orgao'] ?></td> <td align="left"><?php echo $usuario['nome_funcao'] ?></td> <?php foreach($destinos as $key=>$destino):?> <?php $key=0;?> <td align="left"> <?php foreach($destino as $chave=> &$cidade): ?> <?php echo $cidade['cid_nome']."-";?> <?php endforeach;?> </td> <?php $key+=$key; ?> <?php endforeach;?> <td><?php echo date('d/m/Y', strtotime( $usuario['created_at'])) ?></td> <td align="left"><a href="<?php echo base_url('UserAdmin/Usuario/getUsuarioById')."/".$usuario['id_user'] ?>">DETALHES</a></td> </tr> <?php endforeach ?> Onde estou errando? O que tenho de fazer para percorrer este array de modo a aparecer apenas as cidades pertencentes a cada usuário?

    • Por Giovanird
      Listo um array pelo foreach e preciso pegar os valores fora do foreach.
      Abaixo tenho o exemplo do foreach com os valores
       
      <?php foreach($turma $rsturma): if(($rsturma['id'] == 1){ echo $rsturma['nome']."<br>"; echo $rsturma['idade']."<br><br>"; } endforeach; //Dentro do foreach me retorna: Luis 13 Maria 12 Carlos 12 Matheus 14 Andréa 12 //Preciso pegar a posição e o valor desta lista $posicao1 = 1; $nome1 = Luis; $posicao2 = 2; $nome2 = Maria; $posicao3 = 3; $nome3 = Carlos; $posicao4 = 4; $nome4 = Matheus; $posicao5 = 5; $nome5 = Andréa;  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.