Tecnología

Inicio

Cómo crear sondeo con PHP

La adición de un sondeo a su sitio web puede proporcionar retroalimentación de sus usuarios. PHP, acrónimo de "PHP: Protocolo de hipertexto," es un lenguaje de programación web popular que es muy adecuado para la creación de una encuesta. Es conocido por su enorme base de usuarios y documentación de primera categoría, por lo que es un lenguaje atractivo tanto para los programadores aficionados y profesionales. Crear una encuesta con PHP es sencillo.

Instrucciones

1 Decidir sobre un formato para el archivo de texto que se utilizará para almacenar las opciones y los resultados de la encuesta. Se necesitará para almacenar título, las opciones y el número de votos para cada archivo de la encuesta.

2 Abra un editor de texto, como el Bloc de notas y crear un nuevo archivo. Escribe una encuesta utilizando el formato en el que se haya decidido en el paso 1. Guarde el archivo como "poll.txt." Aquí hay un ejemplo:

¿Le gusta esta encuesta?

Sí.

0

No.

0

3 Crear un nuevo archivo. Escribir una función PHP que acepta un nombre de archivo y una referencia a una variable que contendrá el título de la encuesta como parámetros, se abre el archivo, lee el contenido de archivos, establece la variable que contiene el título de la encuesta y devuelve los datos de la encuesta. Aquí está el código final:

extractPollData funcionar ($ archivo, y $ titulo) {

si devuelven false (($ líneas = archivo ($ archivo))!);

for ($ i = 1; i <$ (piso (count (líneas $) / 2) * 2) -1, $ i + 2) = {

$ OptionArr [] = array ( 'nombre' => $ líneas [$ i], 'votos' => $ líneas [$ i + 1]);

}

$ Title = $ líneas [0];

devolver $ optionArr;

}

4 Escribe una segunda función que acepta un nombre de archivo, matriz de datos de la encuesta y el título de la encuesta como parámetros. En el cuerpo de la función, abra el archivo proporcionado como un parámetro utilizando la función "fopen" de PHP. Convertir la matriz y el título en el formato que ha elegido y escribir en el archivo. Cerrar el flujo de archivos utilizando la función "fclose" de PHP. A continuación se muestra el código completo:

writePollData función ($ archivo, $ data, $ titulo) {

$ Texto = $ título. "\norte";

foreach ($ data como $ d) {

$ Texto. = $ D [ 'nombre']. "\ N". $ D [ 'votos']. "\norte";

}

$ h = fopen ($ archivo, 'w');

fwrite ($ h, $ texto);

fclose ($ h);

}

5 Crear un "if" que separa el código en dos situaciones: cuando se ha presentado la encuesta y cuando no lo tiene. En el escenario en el que no se ha enviado el formulario se debe mostrar. Utilice la función que creó en el paso 2 para extraer los datos de la encuesta del archivo de texto. Bucle a través de las opciones mediante un bucle "foreach" y mostrar una caja de radio para cada opción. El código final es a continuación:

if (isset ($ _POST [ 'enviar'])) {

} Else {

$ Data = extractPollData ($ archivo, $ titulo);

echo "<h1>". $ Título. "</ H1>";

echo "<form action = 'submit.php' method =" post ">";

for ($ i = 0; i <$ count ($ data); $ i ++) {

echo "<input type =" radio "nombre = valor" respuesta "= '". $ I. ""> ". $ data [$ i] [ 'nombre']. "";

}

echo "<input type =" submit "name =" submit "value =" Enviar "> </ form>";

}

6 En la segunda parte del "if", en el caso de que la encuesta se ha presentado, extraer los datos de la encuesta utilizando la función de la Etapa 2, aumentar la respuesta que fue seleccionado por uno y guardar los resultados de la encuesta utilizando la función de la Etapa 3. bucle a través de todas las opciones y mostrar los resultados de cada uno. Guarde el archivo PHP como "submit.php." A continuación se muestra el código completo:

if (isset ($ _POST [ 'enviar'])) {

$ Data = extractPollData ($ archivo, $ titulo);

if (isset ($ datos [$ _POST [ "respuesta"]])) {

$ data [$ _POST [ "respuesta"]] [ 'califican'] ++;

writePollData ($ archivo, $ data, $ titulo);

}

echo "<h1> Resultados </ h1>";

foreach ($ data como $ d) {

echo "<b>". $ D [ 'nombre']. "</ B>:". $ [ 'Votos'] d;

}}