- Tema Autor
- #1
Hola que tal?.. tengo un problema que no logro resolver y decidí acudir a los foros, se los pido de favor a ver si encuentran el error ya que no lo logro yo
.
tengo un sistema de encuesta para mi web, el problema es que no cuenta los votos, no los aumenta. aqui dejo los archivos, por cierto si tienen permisos de escritura y lectura los archivos:
Primero el config.php
enc_ver.php
encuesta.php
Y pues finalmente el archivo que se llama base.txt que es donde guarda los votos pero como comentaba, no lo hace... ¿Me podrían dar solución a éste problema? Se los agradecería mucho.
Un saludo

tengo un sistema de encuesta para mi web, el problema es que no cuenta los votos, no los aumenta. aqui dejo los archivos, por cierto si tienen permisos de escritura y lectura los archivos:
Primero el config.php
Código:
<?
// CONFIGURACION DE LA ENCUESTA
$file="base.txt"; //nombre del txt en el que guardaremos los resultados
//Escribe tus respuestas para la encuesta
$c1="Perfecto"; //Perfecto
$c2="Bueno"; //Bueno
$c3="Más o menos"; //Más o menos
$c4="Malo"; //Malo
?>
enc_ver.php
Código:
<?
include("config.php"); //incluimos el fichero config.php donde tenemos la configuración del script
$file2=file($file); //creamos el array con las lineas del archivo
$lineas=count($file2);//contamos los elementos del array, es decir el total de lineas
$n1=$file2[0]; //asignamos a la variable el nº de votos(la línea 1 del txt)
$n2=$file2[1]; //asignamos a la variable el nº de votos(la línea 2 del txt)
$n3=$file2[2]; //asignamos a la variable el nº de votos(la línea 3 del txt)
$n4=$file2[3]; //asignamos a la variable el nº de votos(la línea 4 del txt)
if($En=="E1") //si la respuesta es la opción 1...
{$nn1=intval($n1)+1;}else{$nn1=intval($n1);} //entonces sumamos uno a $nn1, si no, se keda igual
if($En=="E2") //si la respuesta es la opción ...
{$nn2=intval($n2)+1;}else{$nn2=intval($n2);} //entonces sumamos uno a $nn2, si no, se keda igual
if($En=="E3") //si la respuesta es la opción 3...
{$nn3=intval($n3)+1;}else{$nn3=intval($n3);} //entonces sumamos uno a $nn3, si no, se keda igual
if($En=="E4") //si la respuesta es la opción 4...
{$nn4=intval($n4)+1;}else{$nn4=intval($n4);} //entonces sumamos uno a $nn4, si no, se keda igual
$fp=fopen($file,"w+"); //abrimos de nuevo el txt borrándolo todo
fwrite($fp,"$nn1\n$nn2\n$nn3\n$nn4"); //escribimos en el txt los votos.. en su respectiva línea. NOTA: \n <- cambia de línea ;)
fclose($fp); //cerramos el txt
$ntotal=$nn1+$nn2+$nn3+$nn4; //contamos el nº total de votos
?>
<table border=0 cellpadding=0 cellspacing=0 width=188>
<tr>
<td colspan=3 width=186><strong><font face=Arial>Resultados de encuesta<br>
¿Qué te parece el sitio web?</font></strong></td>
</tr>
<tr>
<td width=46><font face=Arial><? echo $c1;?></font></td>
<td width=101><table border=0 cellpadding=0 cellspacing=1 width=100
bgcolor="#000080">
<tr>
<td><table border=0 cellpadding=0 cellspacing=0 width=<? echo $nn1*100/$ntotal;?> bgcolor=#FFFFFF
height=5>
<tr>
<td></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td width=37><p align=center><font face=Arial size=2><? echo $nn1;?></font></td>
</tr>
<tr>
<td width=46><font face=Arial><? echo $c2;?></font></td>
<td width=101><table border=0 cellpadding=0 cellspacing=1 width=100%
bgcolor=#000080>
<tr>
<td width=100%><table border=0 cellpadding=0 cellspacing=0 width=<? echo $nn2*100/$ntotal;?>
bgcolor=#FFFFFF height=5>
<tr>
<td></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td width=37><p align=center><font face=Arial size=2><? echo $nn2;?></font></td>
</tr>
<tr>
<td width=46><font face=Arial><? echo $c3;?></font></td>
<td width=101><table border=0 cellpadding=0 cellspacing=1 width=100%
bgcolor=#000080>
<tr>
<td width=100%><table border=0 cellpadding=0 cellspacing=0 width=<? echo $nn3*100/$ntotal;?>
bgcolor=#FFFFFF height=5>
<tr>
<td></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td width=37><p align=center><font face=Arial size=2><? echo $nn3;?></font></td>
</tr>
<tr>
<td width=46><font face=Arial><? echo $c4;?></font></td>
<td width=101><table border=0 cellpadding=0 cellspacing=1 width=100%
bgcolor=#000080>
<tr>
<td width=100%><table border=0 cellpadding=0 cellspacing=0 width=<? echo $nn4*100/$ntotal;?>
bgcolor=#FFFFFF height=5>
<tr>
<td></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td width=37><p align=center><font face=Arial size=2><? echo $nn4;?></font></td>
</tr>
<tr>
<td width=184 colspan=3><font face=Arial>Total encuesta: </font><font
color=#004080 face=Arial size=2><strong><? echo $ntotal;?></strong></font></td>
</tr>
</table>
<br>
<a href="index.php"><- Volver</a>
?>
encuesta.php
Código:
<?
include("config.php"); //incluimos el fichero config.php donde tenemos la configuración del script
if(!file_exists($file)) //si el txt no existe...
{
$fp=fopen($file,"w"); //creamos un txt por si no tá creado
fputs($fp,"0\n0\n0\n0"); //le ponemos las respuestas desde 0
fclose($fp); //cerramos el txt
}
?>
¿Qué te parece el sitio web?<br><br>
<form method=POST action="encuesta/enc_ver.php">
<input type="radio" name="En" value="E1" checked><? echo $c1;?><br>
<input type="radio" name="En" value="E2"><? echo $c2;?><br>
<input type="radio" name="En" value="E3"><? echo $c3;?><br>
<input type="radio" name="En" value="E4"><? echo $c4;?><br>
</form>
<p>
Y pues finalmente el archivo que se llama base.txt que es donde guarda los votos pero como comentaba, no lo hace... ¿Me podrían dar solución a éste problema? Se los agradecería mucho.
Un saludo
