Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/08/2003, 07:38
BLACK RIVER
Invitado
 
Mensajes: n/a
Puntos:
Ayuda con esta encuesta

Hola grupo.

tengo este códgo simple, para encuestas y lo quiero mejorar con vuestra ayuda.

Código PHP:
<?php
    
//cargo el numero de respuestas de un fichero de texto
    
$f=fopen("encuesta.txt","r");
    
$todas=fread($f,filesize("encuesta.txt"));
    
$respuestas=explode(",",$todas);
    
fclose($f);

    if (
$respuesta) {
        
//incremento la respuesta y la guardo en el fichero
           
$respuestas[$respuesta-1]++;
        
$f=fopen("encuesta.txt","w");
        
$todas=$respuestas[0].",".$respuestas[1].",".$respuestas[2];
        
fwrite($f,$todas,strlen($todas));
        
fclose($f);    
    }       

    
$total=$respuestas[0]+$respuestas[1]+$respuestas[2];
    if(
$total==0) {
        
$porcentaje[0]=0;
        
$porcentaje[1]=0;
        
$porcentaje[2]=0;
    } else {
        
$porcentaje[0]=sprintf("%1.2f",(($respuestas[0]/$total)*100));
        
$porcentaje[1]=sprintf("%1.2f",(($respuestas[1]/$total)*100));
        
$porcentaje[2]=sprintf("%1.2f",(($respuestas[2]/$total)*100));
    }

?>



<table border="0">
 <tr>
  <td colspan="3" align="center">
   Encuesta: ¿Pregunta?
  </td>
 </tr>
 <tr>
  <td align="left">
   <?php echo "$porcentaje[0]%"?>
  </td>
  <td align="left">
   <img src="red.png" height="15" width="<?php echo "$porcentaje[0]"?>">
  </td>
  <td>
   OpcionA
  </td>
 </tr>
 <tr>
  <td align="left">
   <?php echo "$porcentaje[1]%"?>
  </td>
  <td align="left">
   <img src="blue.png" height="15" width="<?php echo "$porcentaje[1]"?>">
  </td>
  <td>
   OpcionB
  </td>
 </tr>
 <tr>
  <td align="left">
   <?php echo "$porcentaje[2]%"?>
  </td>
  <td align="left">
   <img src="yellow.png" height="15" width="<?php echo "$porcentaje[2]"?>">
  </td>
  <td>
   OpcionC
  </td>
 </tr>
</table>

<br><br>

<form name="encuesta" action="encuesta.php" method="post"">
 ¿Pregunta?<br>
 <input type=radio name="respuesta" Value="1"> OpcionA <br>
 <input type=radio name="respuesta" Value="2"> OpcionB <br>
 <input type=radio name="respuesta" Value="3"> OpcionC <br>
 <input type="submit" value="Votar">
</form>
esto me muestra los resultados y la encuesta a la vez. Me gustaría que si el usuario aún no ha votado, que no pueda ver los resultados, osea q sólo pueda votar.
y al votar sólo pueda ver los resultados y no poder votar nunca más o al día siguiente, me es igual.

Bueno, a ver si sabéis como hacerlo ;)