Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/09/2003, 21:21
Avatar de futilidad
futilidad
 
Fecha de Ingreso: julio-2002
Mensajes: 388
Antigüedad: 21 años, 10 meses
Puntos: 0
Evitar F5 en encuesta

Antes que nada un saludo

ojala me pudiesen ayudar con este pequeño script que trata de
eliminar una variable para evitar una votacion duplicada
recargando la pagina.

Esta variable define si se presenta un formulario o se procesan
los resultados de este en una encuesta.

Todo esto dentro de un mismo archivo, el chiste es hacer una
encuesta en la pagina de inicio sobre un artista que les gustaria
cantar y una cancion


inicio.php
Código PHP:
<?
$_GET 
$voto // se recibe la variable voto

if (!isset($voto)) {

// encaso de no venir definida la variable voto se escribe el formulario

echo <<<html
<form name="form1" method="post" action="prueba.php">
  <p>&iquest;Que cancion te gustar&iacute;a cantar?</p>
  <p> 
    <input type="text" name="artista">
    Artista</p>
  <p> 
    <input type="text" name="cancion">
    Canci&oacute;n
  </p>
  <p>
    <input name="voto" type="hidden" value="1">
    <input type="submit" name="Submit" value="Enviar">
  </p>
</form>
html
;
} else {

// en caso de venir definida la variable voto se escribe en la bd

$_GET $artista// recibimos la variable
$artista strtolower($artista); //cambiamos todo a minusculas

$_GET $cancion// recibimos la variable
$cancion strtolower($cancion); //cambiamos todo a minusculas

$host="localhost";
$user="";
$pass="";

// procesamos la informacion dentro de la base de datos
$db=mysql_connect($host,$user,$pass) or die ("Error durante la conexión a la base de datos");
$sql="INSERT INTO encuesta (artista,cancion) VALUES('".$artista."','".$cancion."')";
mysql_db_query("mibasededatos",$sql,$db);
mysql_close();
echo 
"gracias por tu participacion";

//destruimos la variable voto para evitar el recargar la pagina
unset ($voto);

?>
El problema es que al presionar F5 la variable sigue predefinida.
¿ como puedo evitar esto ?

De antemano les agradesco, y si me puediesen hacer
recomendaciones sobre como optimizarian el codigo se los
agradeceria, me serviria para saber como van mis pasos como
aprendiz