Vamos a ver cómo podemos crear una sencilla encuesta con MySQL que almacene las votaciones de los usuarios en la base de datos junto con su direccion ip para controlar que cada usuario vote una sola vez.
El primer paso que haremos será el acondicionamiento de la base de datos, en la que crearemos una tabla usando la siguiente sentencia:
CREATE TABLE `encuesta` (
`ip` VARCHAR( 16 ) NOT NULL ,
`voto` INT( 1 ) NOT NULL ,
UNIQUE (
`ip`
)
);
Excepto si queremos que el mismo usuario pueda votar repetidas veces en cuyo caso haremos:
CREATE TABLE `encuesta` (
`ip` VARCHAR( 16 ) NOT NULL ,`voto` INT( 1 ) NOT NULL
);
El funcionamiento de la encuesta es muy sencillo, el programa leerá las posibles opciones de voto de un array llamado $opciones, que podras modificar a tu voluntad, entonces iterará tantas veces como elementos tenga el array para mostrar los resultados actuales de cada opción.
Para poder mostrar los porcentajes, lo primero que hacemos es una consulta general que nos devuelve el número total de votos recibidos, entonces, en cada opcion haremos la siguiente operación:
$porcentaje = round($votos/$total*100,2);
Que nos devolverá el porcentaje de votos redondeado a 2 decimales usando la funciónround.
Publicar un comentario