Ver Mensaje Individual
  #7 (permalink)  
Antiguo 30/07/2004, 11:56
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
El código lo has segmentado bastante bien ..

Fijate que :

Código PHP:
//Insertamos el voto en la BD
$resultado_voto="resultado".$voto;
$sqlUpdate="UPDATE encuestas SET total_votos=total_votos + 1, $resultado_voto=$resultado_voto + 1 WHERE id=$id_enc";
$rs1=mysql_query($sqlUpdate,$conexion) or die ("Error al consultar la base de datos: " mysql_error());

// hasta aquí sería el proceso de contabilizar tu voto.
// ------- cortar aquí -----------------------------------------------------------
// y hacia abajo tenemos la parte que nos va mostrar (previo consulta SQL a tu BD) esos resultados gráfiamente.

//Tomamos los datos que vamos a mostrar
$sqlSelect="SELECT * FROM encuestas WHERE id=$id_enc";
$rs2=mysql_query($sqlSelect,$conexion) or die ("Error al consultar la base de datos: " mysql_error());
$resultado=mysql_fetch_array($rs2); 
Es decir .. puedes partir ese código en dos (por donde indico).

Lo único que debes "modificar" un poco sería el "ver_encuesta.php" (2º parte del código que vas a obtener). Ese script lo único que requerirá es que le pases por el URL el "id de tu encuesta":

Actualmente todo el script captura esa variabel por POST por qué llega de tu fomulario .. pero ahora va a llegar por GET por que se la vamos a mandar por el URL:

Código PHP:
$id_enc=$_GET["id_encuesta"]; 
Además te hará falta incluir el:

Código PHP:
require_once("conexion.php");
$conexion=conectar(); 
para tu conexión a tu BD y quitar los mysql_close() y msyql_free_result() del final ..(que tampoco hacen mucho en ese punto concreto justo al final del script).

También podrás dejar:

Código PHP:
//ImagePng($im,$ruta);
//sin la $ruta
ImagePng($im); 
Y de esta forma ya podras llamar a tu "ver_encuesta.php" como te mencioné al principio:

Código PHP:
<img src="ver_encuesta.php?id_encuesta=nº"
desde cualquier página de tu sitio.

----

La primera parte del código que obtendras (ese "actualiza_encuesta.php") seguirá trabando igual que ahora .. salvo que al final de su proceso .. tendrás que redireccionar a la página HTML o bien directamente al ver_encuesta.php según donde quieras ver esa encuesta.

Para eso .. usa:
Código PHP:
header("Location: ver_encuesta.php?id_encuesta=".$id_enc);
exit; 
Justo por donde "cortastes".

(Bueno, . .no se te olviden los ?> de cierre y si hay condicionales (como ese IF del principio) cerrarlo: } en el script que corresponda (el primero).

Como veras .. no es tan dificil .. Las imagenes se crearán dinámicamente .. no tendras dando vueltas archivos en el servidor y cliente y liarte con caché y nombres de archivo aleatorios y demás hierbas raras.

Un saludo,

Última edición por Cluster; 30/07/2004 a las 12:00