Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/10/2007, 12:32
Avatar de ZydRick
ZydRick
 
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 20 años
Puntos: 4
Problema mostrando resultados de encuesta

Hola de nuevo, ayer hice una consulta sobre un script para crear encuestas, pues bien, dicha parte ya está funcionando bien, puedo crear encuestas y tal, luego he creado otro script en el que muestro la encuesta con sus opciones, los votos se envían y guardan correctamente, pero el problema surge cuando muestro los resultados de la misma. Aquí dejo dicho script con el que muestro los resultados.

Código PHP:
<?php
    $encuesta 
mysql_query("SELECT * FROM encuestas ORDER BY id_enc LIMIT 0,1");
    while(
$datos mysql_fetch_array($encuesta)) {
        
$id_enc $datos['id_enc'];
        
$pregunta $datos['pregunta'];
?>
        <div style="width: 300px;">
        <strong><?=$pregunta?></strong>
        <ul style="list-style: none;">
<?php
        $tot 
0;
        
$opts mysql_query("SELECT * FROM encuestas_opt WHERE id_enc='".$id_enc."'");
        while(
$dat2 mysql_fetch_array($opts)) {
            
$id_opt $dat2['id_opt'];
            
$opciones $dat2['opciones'];
            
$num_votos $dat2['num_votos'];
            
$tot $num_votos+$tot;
            
$ptos $num_votos 100;
            
$porcentaje = @round($ptos/$tot,0);
?>
            <li style="padding-bottom: 5px;"><?=$opciones?> - <?=$num_votos?> votos - <?=$porcentaje?>%
            <div style="width: <?=$porcentaje?>%; height: 6px; background: #cc0000;"></div></li>
<?php
        
}
?>
        </ul>
        Total: <?=$tot?>
        </div>
<?php
    
}
?>
El número de votos se obtiene de forma correcta, pero cuando quiero obtener el porcentaje de votos es donde me salta un problema y es que la primera opción siempre me muestra con 100% del total de votos sin importar que esta pueda tener menos votos que las demás, les dejo una imagen de muestra:



He puesto de cabeza el script para ver la falla pero no doy con ella ¿Dónde es que estoy fallando?, gracias de antemano por la ayuda.

Saludos.