Foros del Web » Programando para Internet » PHP »

includes en index.php

Estas en el tema de includes en index.php en el foro de PHP en Foros del Web. Hola. He introducido una encuesta con u include en mi pagina principal (index.php) pero al votar en las opciones me da error. Sé que es ...
  #1 (permalink)  
Antiguo 15/08/2004, 12:30
kenshindark
Invitado
 
Mensajes: n/a
Puntos:
includes en index.php

Hola.
He introducido una encuesta con u include en mi pagina principal (index.php) pero al votar en las opciones me da error. Sé que es por el hecho de introducirla en el index pq si la ejecuto sola, como encuesta.php, si que se ve bien. ¿alguien puede decirme que es lo que me falla?
  #2 (permalink)  
Antiguo 15/08/2004, 13:20
 
Fecha de Ingreso: agosto-2004
Ubicación: Valencia
Mensajes: 149
Antigüedad: 19 años, 8 meses
Puntos: 0
¿Por qué no pegas aquí el código de la encuesta para tener más datos?
Si no es imposible que nadie te pueda decir nada.
  #3 (permalink)  
Antiguo 15/08/2004, 14:03
kenshindark
Invitado
 
Mensajes: n/a
Puntos:
Lo siento. El código es:

<?php
//aki 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) {
//aki 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));
}

?>


// aki empieza el sistema de barras

<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>

// aki pongo las opciones para votar

<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>

Última edición por kenshindark; 15/08/2004 a las 14:28
  #4 (permalink)  
Antiguo 15/08/2004, 14:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. y que error te dá ..?

Para próximas veces .. recuerda que cuanto más información des de tu problema .. mejor y más pronto se te podrá ayudar.

Por lo demás .. dices que tienes un tal "index.php" que llamas a ese encuesta.php bajo un include() .. Si es así .. tu: <form name="encuesta" action="encuesta.php" method="post""> debería apuntar a tu index.php.

Por lo demás .. ese script no discrimina por donde llegan las variables (del formulario) .. y como dices que antes te funcionaba por separado será que usas (php.ini): register_globals a ON (lo cual no es muy recomendable) y .. el código en cuestión que lo lo tenga en cuenta tampoco es recomendable ..

Un saludo,
  #5 (permalink)  
Antiguo 15/08/2004, 15:50
kenshindark
Invitado
 
Mensajes: n/a
Puntos:
Gracias, me has solucionado el problema.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:38.