Ver Mensaje Individual
  #5 (permalink)  
Antiguo 31/01/2010, 20:06
estudio54
 
Fecha de Ingreso: enero-2010
Mensajes: 35
Antigüedad: 15 años
Puntos: 0
Respuesta: Problemas con "Include"

Hola,

Gracias a todos por las respuestas.
En principio parece que me indica que hay un error en la variable $total_votos (linea 76). No funciona con mysql, como podeis ver los datos se guardan en un archivo de texto plano.

Por otra parte, quisiera plantear otra cuestión. Esta encuesta esta programada para utilizaruna unica imagen "jpg" como barra grafica de porcentaje. Quisiera saber como podría implementar una distinta para la otra respuesta. Dejando una verde para votos positivos y una roja para los negativos.

Os dejo el script:

Código PHP:
$titulo "Opina"
$archivo "votos.txt";    
$archivoip "ips.txt";        

function 
YaVotaste() {        
global 
$archivoip;
global 
$REMOTE_ADDR;
$ips fopen($archivoip"r");
while (!
feof($ips)) {
    
$ip fgets($ips20);

    if (
$ip == $REMOTE_ADDR "\r\n") {
        
$coincide 1;
        break;
        }
    }
    
fclose($ips);
    if (!
$coincide) {
    
$ips fopen($archivoip"a");
    
fputs($ips$REMOTE_ADDR "\r\n");
    
fclose($ips);
    return 
false;
    }
    else {
    return 
true;
    }
}
function 
agregaVotacion($voto) {        
    global 
$archivo;
    
$leer_votacion fopen($archivo"r");
    
$tu_voto fread($leer_votacionfilesize($archivo));
    
fclose($leer_votacion);
    
$votos split('[|:]'$tu_voto);
    for (
$i 1$i count($votos); $i $i 2) {
    
$nombre $i 1;
    if (
$votos[$nombre] == $voto) {
        
$votos[$i]++;
        }

    if (
$i == (count($votos) - 1)) {
        
$act_Voto .= $votos[$nombre] . ":" $votos[$i];
        }
    else {
        
$act_Voto .= $votos[$nombre] . ":" $votos[$i] . "|";
        }
    }

    
$escribe_archivo fopen($archivo"w");
    
fputs($escribe_archivo$act_Voto);
    
fclose($escribe_archivo);
}


function 
mostrar($msgs) {            
    global 
$titulo$archivo;

    echo 
"<html>";
    echo 
"<head>";
    echo 
"<title>$titulo - Resultados</title>";
    
    global 
$clscr;
    echo 
"</head>";
    echo 
"<body>";
    
        
    echo 
"<font face='Tahoma' size='2'>";
    
$leer_votacion fopen($archivo"r");
    
$tu_voto fread($leer_votacionfilesize($archivo));
    
fclose($leer_votacion);
    
$votos split('[|:]'$tu_voto);
    echo 
"<u><b>Resultados</b></u><br>";
    
    for (
$i 1$i count($votos); $i $i 2)
    {
    
$total_votos += $votos[$i];
    }

    for (
$i 1$i count($votos); $i $i 2) {
    
$nombre $i 1;
    if (
$total_votos == 0) {
    
$porcnt 0;
    }
    else {
    
$porcnt $votos[$i] / $total_votos 100;
    
$porcnt round($porcnt1);
    }

    echo 
"<br>";
    echo 
"\t$votos[$nombre] -> ";
    echo 
"\t<b>$votos[$i]</b> votos <br>";

        
    if (
$porcnt == 0) {
    echo 
"\t<img src=barra.jpg width=$porcnt height=15> <br><b>$porcnt%</b>";
    }

        
    else {
    echo 
"\t<img src=barra.jpg width=$porcnt height=15> <br><b>$porcnt%</b> <br>";
    }

    
        echo 
"<br>";
    }
    echo 
"Total Votos: <b>$total_votos</b><br>";
    if(
$clscr==1)
    {
        echo 
"<a href=javascript:window.close();>Cerrar</a>";
    }
    else
    {
        echo 
"<a href=javascript:history.back(-1);>Volver</a>";
    }
        
    if (isset(
$msgs)) {
        echo 
"$msgs";
    }
     echo 
"<br>";
    echo 
"</body>";
    echo 
"</html>";
}

if (!isset(
$voto)) {
    
mostrar("");
    exit;
}
if (
YaVotaste()) {
    
mostrar("<br><br><b>No puede votar dos veces.<br> Gracias por su participación</b>");
    exit;
}
agregaVotacion($voto);
mostrar("");