regina 0 Denunciar post Postado Dezembro 15, 2010 Boa noite, estou desenvolvendo uma enquete, estou com dúvida na exibição dos resultados. Tenho uma tabela com o título da enquete, uma para as respostas da enquete e outra para receber os votos: CREATE TABLE IF NOT EXISTS `tb_enquetes_votos` ( `voto_id` int(10) NOT NULL AUTO_INCREMENT, `enquete_id` int(10) NOT NULL, `resposta_id` int(10) NOT NULL DEFAULT '0', `data_votacao` datetime NOT NULL, PRIMARY KEY (`voto_id`,`enquete_id`,`resposta_id`), KEY `enquete_id` (`enquete_id`), KEY `i2` (`resposta_id`), ) ENGINE=InnoDB DEFAULT CHARSET=latin1 PACK_KEYS=0 AUTO_INCREMENT=51 ; Como devo fazer o SELECT para obter os votos de cada resposta e como exibí-los? Pesquisando cheguei ao script abaixo, mas não funciona :( $query=mysql_query("SELECT resposta_id,COUNT(resposta_id) as votos FROM tb_enquetes_votos WHERE enquete_id='$cod' GROUP BY resposta_id") or die (mysql_error()); $total=mysql_result($query, 0, "votos"); while($dados=mysql_fetch_object($query)) { $busca=mysql_query("SELECT * FROM tb_enquetes_respostas WHERE enquete_id='$cod' ORDER BY resposta_id ASC") or die (mysql_error()); $reg=mysql_num_rows($busca); $i=0; $total_votos=0; while($resp=mysql_fetch_array($busca)){ $i++; $total_votos=$resp['votos']+$total_votos; $opcao=@floor($resp['votos'] / $total * 100); $largura=100 - $opcao; print "<p style='text-align:left'>".$resp['resposta']."</p>"; print "<div style='position:relative;float:left;height:15px;width:120px;background:#FFF'><img src=\"../imagens/bar.jpg\" width=\"$opcao\" height=\"15\" alt=\"$opcao\"/></div>"; print "<p style='margin:0 5px'>".$resp['votos']."</p>"; } } print "<p style='margin:30px 5px 10px 5px'><b>Total de votos: ".$total_votos ."</b></p>";?> Desde já agradeço a quem puder me ajudar. Compartilhar este post Link para o post Compartilhar em outros sites
Diego Macêdo 6 Denunciar post Postado Dezembro 21, 2010 Já testou executar o primeiro SQL pra saber se ta retornando os dados corretamente? Compartilhar este post Link para o post Compartilhar em outros sites