Mehow 1 Denunciar post Postado Janeiro 4, 2010 Estou fazendo uma galeria dinâmica, na tabela de fundo da imagem as cores devem alternar como nesse exemplo http://www.colegiodrummondbarretos.com.br/ensinomedio.htm foto1 = amarelo foto2 = vermelho foto3 = verde com 2 cores até consigo, é fácil <td height="141" align="center" bgcolor="<?php if($c % 2){ echo "#CC6868";}else{ echo "#FFE26F";}?>"> mas entre 3 não estou conseguindo fazer, alguém pode me ajudar? obrigado Compartilhar este post Link para o post Compartilhar em outros sites
SetaMB 1 Denunciar post Postado Janeiro 4, 2010 Olá! Faz um if assim: if($cor == cor1) { $cor = cor2; } else if($cor == cor2) { $cor = cor3; } else { $cor = cor1; } Aí você aplica na tabela......pode fazer com switch case também. Abraço, SetaMB Compartilhar este post Link para o post Compartilhar em outros sites
Good 4 Denunciar post Postado Janeiro 4, 2010 Recomendo com switch.. pq ele é mais rápido do que if... mas é claro que não dá pra usar switch em todos os casos.. mas sempre no que puder, recomendo utilizar.. pq ele vai direto ao ponto... ele não vai fazer verificações, se algo é igual ou diferente de uma coisa, o que é o caso do if.. Ex. pra você: switch($_POST['cor']){ case 1: $cor = "1"; break; case 2: $cor = "2"; break; case 3: $cor = "3"; break; } flw Compartilhar este post Link para o post Compartilhar em outros sites
Mehow 1 Denunciar post Postado Janeiro 4, 2010 Recomendo com switch.. pq ele é mais rápido do que if... mas é claro que não dá pra usar switch em todos os casos.. mas sempre no que puder, recomendo utilizar.. pq ele vai direto ao ponto... ele não vai fazer verificações, se algo é igual ou diferente de uma coisa, o que é o caso do if.. Ex. pra você: switch($_POST['cor']){ case 1: $cor = "1"; break; case 2: $cor = "2"; break; case 3: $cor = "3"; break; } flw no meu caso tenho um contador que verifico quando for divisivel por 2 atribui a cor ainda não consegui entender como vou usar o if ou switch para verificar as cores... Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Janeiro 4, 2010 Coloca um && no If if(($cor == cor1) && ($c % 2)) { $cor = cor2; } elseif(($cor == cor2)) && ($c % 2)) { $cor = cor3; } elseif($c % 2) { $cor = cor1; } Compartilhar este post Link para o post Compartilhar em outros sites
Mehow 1 Denunciar post Postado Janeiro 4, 2010 Não deu certo, olhem o resultado http://www.colegiodrummondbarretos.com.br/eventos_teste.htm ou então fiz errado o código <?php $path_local = "padrao.php"; include("db.php"); $sql = mysql_query("SELECT * from eventos ORDER BY id_evento DESC"); $c = 0; $i = 0; $cor1 = "#CC6868"; $cor2 = "#FFE26F"; $cor3 = "#DADA8F"; while($row = mysql_fetch_array($sql)){ $idEvento = $row['id_evento']; $nome = $row['nome']; $data = $row['data']; $foto = $row['foto']; $filename = "eventos/fotosevento/".$foto; if(file_exists($filename)){ $xtam = getimagesize($filename); $xw = $xtam[0]; $xh = $xtam[1]; $xarq = "eventos/fotosevento/miniaturas/".$foto; if(!file_exists($xarq)){ criarThumbnail($filename); } } if(($cor == $cor1) && ($c % 2)) { $cor = $cor2; } elseif(($cor == $cor2) && ($c % 2)) { $cor = cor3; } elseif($c % 2) { $cor = $cor1; } ?> <td valign="top"> <table width="320" border="0" align="center" cellpadding="0" cellspacing="0" class="preto"> <tr> <td width="320" align="center"> <table width="208" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="141" align="center" bgcolor="<?php echo $cor?>"> <a href="eventos/fotosevento/<?php echo $foto?>" rel="sexylightbox[group<?php echo $idEvento?>]" title="<?php echo $nome?>"> <img src="eventos/fotosevento/miniaturas/<?php echo $foto ?>" border="0" /></a> <?php $sql_fotos = mysql_query("SELECT * FROM fotos_evento WHERE id_evento = '$idEvento'"); while($row = mysql_fetch_array($sql_fotos)){ $fotogaleria = $row['foto']; echo '<a href=eventos/fotosevento/'.$fotogaleria.' rel=sexylightbox[group'.$idEvento.'] title='.$nome.'></a>'; } ?> </td> </tr> </table> </td> </tr> <tr> <td height="20" align="center" valign="top"><?php echo $nome?></td> </tr> <tr> <td height="20" align="center" valign="top"> </td> </tr> </table> <?php $c++; $i++; if($i == 3) { echo '</tr><tr>'; } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Janeiro 4, 2010 Ja tentou colocar o IF dentro do segundo WHILE ? Compartilhar este post Link para o post Compartilhar em outros sites
Mehow 1 Denunciar post Postado Janeiro 4, 2010 Agora deu certo! a solução tava na minha cara fez o seguinte, como tenho o contador $i para contar quando tiver 3 fotos e pular a linha para exibir mais 3 fotos, eu coloquei para quando o $i for 1 coloca a cor1 e assim por diante, no final quando o $i for 3, volto o valor de $i para 0 <td height="141" align="center" bgcolor="<?php if($i == 0){ echo $cor1;}if($i == 1){ echo $cor2;}if($i == 2){ echo $cor3;}?>"> valew ^^ Compartilhar este post Link para o post Compartilhar em outros sites