Gaulia 1 Denunciar post Postado Janeiro 25, 2006 Então minha dúvida é o seguinte Eu estou usando while para fazer um loop de guia de episodios... Mas eu queria que apenas o campo "temporada" não repeti-se... o resto ssim... ficando assim: 1º Temporada 1º Episodio. 2º Episodio. 3º Temporada 1º A morte de Sasuke 2º Episodio. 4º Temporada 1º Episodio. Só que quando eu uso o GROUP BY temporada, ele elimina todas as temporadas iguais e a linha inteira dela... Então se tiver 2 guias em uma temporada só ele vai aparecer um só... Como eu faço para quando ele for fazer o while, ele não repita o campo temporada e o resto repita...? $sql = mysql_query("SELECT id_guia, temporada, titulo FROM guia_ep WHERE anime = '$guia' GROUP BY temporada ORDER BY temporada ASC");while($a = mysql_fetch_array($sql)){ $id_guia = $a['id_guia']; $temporada = $a['temporada']; $titulo = $a['titulo'];} Compartilhar este post Link para o post Compartilhar em outros sites
sadboar 0 Denunciar post Postado Janeiro 25, 2006 acho q você ta indo pela logica errada... o jeito q você ta fazendo é possivel mas é mais dificil...você pode definir uma variavel qq com valor 0...e se for 0 ele mostra a temporada e grava valor 1 na variavel, se for 1 ele nao mostra a temporada e só o episodio.ai tiraria o group by.outra solução é fazer uma busca só das temporadas e dentro do while de temporadas fazer outro while pegando os episodios...ai a primeira sql query fica com group by pra pegar as temporadas e a segunda fica só where temporada = '$temporada'se tiver mto confuso fala, mas acho q é isso ai.se você nao conseguir eu vejo se mando um exemplo. Compartilhar este post Link para o post Compartilhar em outros sites
martinusso 0 Denunciar post Postado Janeiro 25, 2006 manda organizar por temporada assim fica mais facil verificar se a temporada atual é igual a anterior, sendo iqual não faz nada e prossegui. Acho assim fica moleza Compartilhar este post Link para o post Compartilhar em outros sites
Gaulia 1 Denunciar post Postado Janeiro 26, 2006 Obrigado pela opniões dos dois...Sadboar eu pensei em fazer um while de temporada e dentro dele um de episodios, mas não deu muito certo...Eu tentei e deu erro ehhehe... posso até mandar o script se quiser ver, mas eu usei essa lógico de fazer dois while, mas como vi que deu erro, pensei que tinha alguma função no SQL que resolveria isso, tudo bem vou tentar, commo não estou em casa, eu testo quando chegar, obrigado...Martinusso, não entendi o que disse... por que eu cheguei a fazer isso, eu uso GROUP BY, mas quero que embaixo dele aparece os episodios da temporada... então explique melhor... Compartilhar este post Link para o post Compartilhar em outros sites
martinusso 0 Denunciar post Postado Janeiro 26, 2006 mas não é para usar group by, use o while e liste tudo, filtrando o que precisar(se necessario com where), depois dentro do while, faça um if mesmo para comparar se o valor tempordada atual é igual ao valor temporada anterior. Lógico que você terá que efetuar um ORDER BY temporada. entendeu? qq coisa posta ae q eu explico novamente http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif ou se não posta o que você fez q eu dou uma força no codigo pra você http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
sadboar 0 Denunciar post Postado Janeiro 26, 2006 Ve se isso da certo nem revisei o codigo, mas acho q vai funcionar direitinho...to meio sem tempo hje. qq coisa posta seu codigo ai. $sql = mysql_query("SELECT temporada FROM guia_ep GROUP BY temporada ORDER BY temporada ASC");while($a = mysql_fetch_array($sql)){ $temporada = $a['temporada']; echo "<p>$temporada</p>"; $sql1 = mysql_query("SELECT id_guia, titulo FROM guia_ep WHERE temporada = '$temporada' ORDER BY id_guia ASC"); while($b = mysql_fetch_array($sql1)) $id = $b['id_guia']; $titulo = $b['titulo']; { echo "$id - $titulo<br>"; }} Compartilhar este post Link para o post Compartilhar em outros sites
Gaulia 1 Denunciar post Postado Janeiro 27, 2006 Nossa, deu certinho e entendi o que você fez.. Agradeço muito pela colaboração e a força de vontade de ajudar um pobre coitado :P Agradeço mesmo... aqui está o código que o SadBoar mandou e eu arrumei umas coisinhas... :P $sql = mysql_query("SELECT temporada FROM guia_ep GROUP BY temporada ORDER BY temporada ASC");while($a = mysql_fetch_array($sql)){ $temporada = $a['temporada']; echo "<p><strong>" . $temporada . "º Temporada</strong></p>"; $sql1 = mysql_query("SELECT id_guia, titulo FROM guia_ep WHERE temporada = '$temporada' ORDER BY titulo ASC"); while($b = mysql_fetch_array($sql1)) { $id = $b['id_guia']; $titulo = $b['titulo']; echo "<a href=" . $url . "guia_episodios&review=" . $id . ">" . $titulo . "</a><br>"; } Compartilhar este post Link para o post Compartilhar em outros sites
sadboar 0 Denunciar post Postado Janeiro 27, 2006 opa...q bom q deu certo.... precisando é só falar Compartilhar este post Link para o post Compartilhar em outros sites