SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
Aplicaciones de Internet                                    www.CarlosBacalla.com
                        SISTEMA DE ENCUESTAS CON PHP Y MYSQL

Objetivo:
Trabajar con MySQL, Base Datos y Tablas
Trabajar con Librería de Conexión, INCLUDE
Generar un grafico de columnas con Codigo PHP

I. CREAR LA BASE DE DATOS: SistemaEncuesta

Vamos a crear encuestas para nuestro sitio web. Para ello crearemos dos sencillas tablas en MySQL,
una para controlar las encuestas propiamente dichas y otra para las respuestas de cada encuesta.

Tabla de encuestas:

CREATE TABLE encuestas (
      id INT not null AUTO_INCREMENT,
      titulo VARCHAR (100) not null ,
      fecha INT(10) not null ,
      PRIMARY KEY (id));

   •   Id: Es el identificador de la encuesta. Se incrementa automáticamente y sirve de clave primaria.
   •   Titulo: Tendremos 50 caracteres para asignar un titulo que contendrá la pregunta en sí.
   •   Fecha: Servirá tanto para conocer la fecha de la encuesta, como para que sólo se muestre la
       última.




Tabla de respuestas:

CREATE TABLE respuestas (
      id INT not null AUTO_INCREMENT,
      texto VARCHAR (50) not null ,
      votos INT (5) not null ,
      idenc INT not null,
      PRIMARY KEY (id));

   •   Id: Identificador de la respuesta. Se incrementa automáticamente y sirve de clave primaria.
   •   Texto: Es el texto que describirá la respuesta
   •   Votos: El total de votos acumulados.
   •   Idenc: Referencia al Id de la encuesta a la que está asociado.




Ing. Carlos Bacalla                                                                      Página 1 de 10
Aplicaciones de Internet                                                      www.CarlosBacalla.com
II. CREAR LA LIBRERÍA DE CONEXIÓN A LA BASE DATOS

ARCHIVO: CONEXIÓN.PHP




III. DAR DE ALTA UNA NUEVA ENCUESTA

La forma de crear una nueva encuesta será sencilla; Un formulario nos pregunta el texto de la pregunta
y el número total de respuestas. Damos a "Enviar". Acto seguido tendremos un campo de texto por cada
respuesta, donde asignaremos el texto de la respuesta. Volvemos a dar a "Aceptar" y si todo ha ido bien,
nuestra encuesta ya estará dada de alta en nuestra base de datos.

Primer formulario: encuestas

ARCHIVO: ENCUESTA.PHP




Ing. Carlos Bacalla                                                                     Página 2 de 10
Aplicaciones de Internet                                                  www.CarlosBacalla.com




Segundo formulario, dentro de preguntas.php Básicamente lo único que hacemos en este formulario es
poner tantos campos de texto como posibles respuestas haya.

ARCHIVO: PREGUNTAS.PHP




Ing. Carlos Bacalla                                                                Página 3 de 10
Aplicaciones de Internet                                                     www.CarlosBacalla.com
El siguiente fichero (proceso.php) es el que se encarga de guardar los cambios en la base de datos. En
un primero momento, guardamos tan solo la encuesta, con sus campos 'fecha' y 'titulo'. Posteriormente
sacamos el 'id' asignado a nuestra encuesta (la última almacenada) para que al insertar las respuestas
podamos hacer referencia al id de la encuesta a la que va asociada.

ARCHIVO: PROCESO.PHP




Ing. Carlos Bacalla                                                                    Página 4 de 10
Aplicaciones de Internet                                                  www.CarlosBacalla.com
IV. VOTAR LOS RESULTADOS

Tal y como yo he planteado este sistema de encuestas, la única que se mostrará será la que tenga la
fecha más reciente, es decir, la última encuesta insertada. Cualquier modificación para evitar este
funcionamiento no creo que os suponga mucho esfuerzo.
A continuación tenéis el código del formulario para votar la opción que deseada.

ARCHIVO: OPCIONES.PHP




Ing. Carlos Bacalla                                                                 Página 5 de 10
Aplicaciones de Internet                                                   www.CarlosBacalla.com




El código que viene a continuación, votacion.php, de momento sólo añade el voto a la base de datos.
Más adelante pondremos en éste mismo fichero el código que añade la imagen con el gráfico de barras:

ARCHIVO: VOTACION.PHP




Ing. Carlos Bacalla                                                                  Página 6 de 10
Aplicaciones de Internet                                                      www.CarlosBacalla.com
V. MOSTRAR EL GRÁFICO DE BARRAS

Para realizar esto lo que haremos es crearnos un fichero que conectará con la base de datos y extraerá
la información necesaria. Crearemos una imagen, y le daremos formato con funciones de la librería gd.

Quizás a muchos de vosotros os surja la duda, tal y como me ocurrió a mí, de como poner en
funcionamiento esta librería: Tenéis que bajaros (en caso de estar en Windows) el archivo php_gd.dll,
copiarlo a la carpeta extensions de php y descomentar la línea donde se hace referencia a la DLL en
cuestión en el php.ini.

El código, aunque a alguno a primera vista os intimide, realmente no tiene complicación alguna, tan solo
leemos de la base de datos y dibujamos los elementos de nuestro gráfico de barras:

NOTA: Éste fichero ha de conectar con la base de datos. Para que funcione correctamente, tenéis que
añadir que incluya conexion.php directamente vosotros en el sitio que corresponda. Dicho queda.

Ya lo tenemos todo hecho, tan sólo nos falta incluir un pequeño detalle a nuestro código. En el archivo
que capta los votos (votar.php) tenéis que añadir el siguiente código:

<img src="votar.php">

Y os coloco una imagen del resultado final de una encuesta cualquiera:


ARCHIVO: VOTAR.PHP




Ing. Carlos Bacalla                                                                     Página 7 de 10
Aplicaciones de Internet   www.CarlosBacalla.com




Ing. Carlos Bacalla                Página 8 de 10
Aplicaciones de Internet                    www.CarlosBacalla.com




VI . PRESENTACIÓN DEL SISTEMA DE ENCUESTA

ARCHIVO: INDEX.PHP




Ing. Carlos Bacalla                                 Página 9 de 10
Aplicaciones de Internet                                 www.CarlosBacalla.com



FUENTE ORIGINAL:
http://www.programacion.com/php/articulo/encuestas_gd/
Cómo hacer encuestas con PHP y MySQL
Autor: Jesus Ruiz-Ayúcar Vázquez


EDITADO POR:
Ing. Carlos Bacalla
www.CarlosBacalla.com




Ing. Carlos Bacalla                                             Página 10 de 10

Más contenido relacionado

Destacado (20)

Los transgénicos.pptx-angie
Los transgénicos.pptx-angieLos transgénicos.pptx-angie
Los transgénicos.pptx-angie
 
Intranet ,erp y crm
Intranet ,erp y crmIntranet ,erp y crm
Intranet ,erp y crm
 
La base de datos de WordPress
La base de datos de WordPressLa base de datos de WordPress
La base de datos de WordPress
 
Siseg
SisegSiseg
Siseg
 
Programacion de SQL y MySQL
Programacion de SQL y MySQLProgramacion de SQL y MySQL
Programacion de SQL y MySQL
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
 
PHP MySql - FIEI - UNFV Clase07
PHP MySql - FIEI - UNFV Clase07PHP MySql - FIEI - UNFV Clase07
PHP MySql - FIEI - UNFV Clase07
 
PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05
 
PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02
 
Mysql
MysqlMysql
Mysql
 
PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06
 
PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01
 
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
 
PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03
 
Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2
 
PHP Y MYSQL
PHP Y MYSQLPHP Y MYSQL
PHP Y MYSQL
 
Curso TIC de PHP y MSQL
Curso TIC de PHP y MSQLCurso TIC de PHP y MSQL
Curso TIC de PHP y MSQL
 
desarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqldesarrolo de sitios web php y mysql
desarrolo de sitios web php y mysql
 
Php.y.my sql
Php.y.my sqlPhp.y.my sql
Php.y.my sql
 
2685008 taller-java
2685008 taller-java2685008 taller-java
2685008 taller-java
 

Similar a Cómo hacer encuestas con php y my sql

Actualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHPActualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHPyanburbano
 
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0 CONEXION A BASE DE DATOS - VISUAL BASIC 6.0
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0 Ambar Larrazabal
 
Conectando visual basic 6.0 a bases de datos
Conectando visual basic 6.0 a bases de datosConectando visual basic 6.0 a bases de datos
Conectando visual basic 6.0 a bases de datosRafaelAponte16
 
Base de datos Juan Gomez 27046004 #44
Base de datos Juan Gomez 27046004 #44 Base de datos Juan Gomez 27046004 #44
Base de datos Juan Gomez 27046004 #44 JuanGomez928
 
Conexion bases de datos a visual basic 6.0
Conexion  bases de datos a visual basic 6.0Conexion  bases de datos a visual basic 6.0
Conexion bases de datos a visual basic 6.0bigdog10
 
Yahoo! pipes + Wordpress plugin - RSS POWER to your blog
Yahoo! pipes + Wordpress plugin - RSS POWER to your blogYahoo! pipes + Wordpress plugin - RSS POWER to your blog
Yahoo! pipes + Wordpress plugin - RSS POWER to your blogJuan Belón Pérez
 
Base de datos desde vb 6.0
Base de datos desde vb 6.0Base de datos desde vb 6.0
Base de datos desde vb 6.0WendyMendez30
 
bases de datos desde visual basic
bases de datos desde visual basicbases de datos desde visual basic
bases de datos desde visual basicsantiagomario8
 
Conectar con bases de datos
Conectar con bases de datosConectar con bases de datos
Conectar con bases de datosRafael Quintero
 
Formulario HTML-PHP dirigido a una Base de datos
Formulario HTML-PHP dirigido a una Base de datosFormulario HTML-PHP dirigido a una Base de datos
Formulario HTML-PHP dirigido a una Base de datosCursando Desarrollo Web
 
Bases de Datos desde Visual Basic 6.0 - Juan Gordillo
Bases de Datos desde Visual Basic 6.0 - Juan GordilloBases de Datos desde Visual Basic 6.0 - Juan Gordillo
Bases de Datos desde Visual Basic 6.0 - Juan GordilloJuanGordillo13
 
Guia N4 Proyectos Web My Sql Y Php
Guia N4   Proyectos Web   My Sql Y PhpGuia N4   Proyectos Web   My Sql Y Php
Guia N4 Proyectos Web My Sql Y PhpJose Ponce
 
Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0daiacos
 
la mejor forma de Conectar c# con mysql con archivos de configuracion
 la mejor forma de Conectar c# con mysql con archivos de configuracion  la mejor forma de Conectar c# con mysql con archivos de configuracion
la mejor forma de Conectar c# con mysql con archivos de configuracion juandavid1118
 
Presentación Final
Presentación FinalPresentación Final
Presentación Finalcazel_269
 
Actualizar bases de datos juan
Actualizar bases de datos juanActualizar bases de datos juan
Actualizar bases de datos juanJuanGomez928
 

Similar a Cómo hacer encuestas con php y my sql (20)

Actualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHPActualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHP
 
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0 CONEXION A BASE DE DATOS - VISUAL BASIC 6.0
CONEXION A BASE DE DATOS - VISUAL BASIC 6.0
 
Conectando visual basic 6.0 a bases de datos
Conectando visual basic 6.0 a bases de datosConectando visual basic 6.0 a bases de datos
Conectando visual basic 6.0 a bases de datos
 
Base de datos Juan Gomez 27046004 #44
Base de datos Juan Gomez 27046004 #44 Base de datos Juan Gomez 27046004 #44
Base de datos Juan Gomez 27046004 #44
 
Conexion bases de datos a visual basic 6.0
Conexion  bases de datos a visual basic 6.0Conexion  bases de datos a visual basic 6.0
Conexion bases de datos a visual basic 6.0
 
Yahoo! pipes + Wordpress plugin - RSS POWER to your blog
Yahoo! pipes + Wordpress plugin - RSS POWER to your blogYahoo! pipes + Wordpress plugin - RSS POWER to your blog
Yahoo! pipes + Wordpress plugin - RSS POWER to your blog
 
Base de datos desde vb 6.0
Base de datos desde vb 6.0Base de datos desde vb 6.0
Base de datos desde vb 6.0
 
bases de datos desde visual basic
bases de datos desde visual basicbases de datos desde visual basic
bases de datos desde visual basic
 
Conectar con bases de datos
Conectar con bases de datosConectar con bases de datos
Conectar con bases de datos
 
Formulario HTML-PHP dirigido a una Base de datos
Formulario HTML-PHP dirigido a una Base de datosFormulario HTML-PHP dirigido a una Base de datos
Formulario HTML-PHP dirigido a una Base de datos
 
6 Alan Faria
6 Alan Faria6 Alan Faria
6 Alan Faria
 
Bases de Datos desde Visual Basic 6.0 - Juan Gordillo
Bases de Datos desde Visual Basic 6.0 - Juan GordilloBases de Datos desde Visual Basic 6.0 - Juan Gordillo
Bases de Datos desde Visual Basic 6.0 - Juan Gordillo
 
Tarea_sesion7.pptx
Tarea_sesion7.pptxTarea_sesion7.pptx
Tarea_sesion7.pptx
 
Guia N4 Proyectos Web My Sql Y Php
Guia N4   Proyectos Web   My Sql Y PhpGuia N4   Proyectos Web   My Sql Y Php
Guia N4 Proyectos Web My Sql Y Php
 
Programacion2
Programacion2Programacion2
Programacion2
 
Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0
 
la mejor forma de Conectar c# con mysql con archivos de configuracion
 la mejor forma de Conectar c# con mysql con archivos de configuracion  la mejor forma de Conectar c# con mysql con archivos de configuracion
la mejor forma de Conectar c# con mysql con archivos de configuracion
 
Base de datos
Base de datosBase de datos
Base de datos
 
Presentación Final
Presentación FinalPresentación Final
Presentación Final
 
Actualizar bases de datos juan
Actualizar bases de datos juanActualizar bases de datos juan
Actualizar bases de datos juan
 

Más de Layarme Ticliahuanca Lizana (8)

El signo lingüístico
El signo lingüísticoEl signo lingüístico
El signo lingüístico
 
Trastornos neurológicos
Trastornos neurológicosTrastornos neurológicos
Trastornos neurológicos
 
2010 informe final_vacunaciones
2010 informe final_vacunaciones2010 informe final_vacunaciones
2010 informe final_vacunaciones
 
Ntk uhp-mw-1 ft-series_esp
Ntk uhp-mw-1 ft-series_espNtk uhp-mw-1 ft-series_esp
Ntk uhp-mw-1 ft-series_esp
 
Interlink redes canaletas
Interlink redes canaletasInterlink redes canaletas
Interlink redes canaletas
 
Cómo hacer encuestas con php y my sql
Cómo hacer encuestas con php y my sqlCómo hacer encuestas con php y my sql
Cómo hacer encuestas con php y my sql
 
Gdi.hosting
Gdi.hostingGdi.hosting
Gdi.hosting
 
Gdi.hosting
Gdi.hostingGdi.hosting
Gdi.hosting
 

Cómo hacer encuestas con php y my sql

  • 1. Aplicaciones de Internet www.CarlosBacalla.com SISTEMA DE ENCUESTAS CON PHP Y MYSQL Objetivo: Trabajar con MySQL, Base Datos y Tablas Trabajar con Librería de Conexión, INCLUDE Generar un grafico de columnas con Codigo PHP I. CREAR LA BASE DE DATOS: SistemaEncuesta Vamos a crear encuestas para nuestro sitio web. Para ello crearemos dos sencillas tablas en MySQL, una para controlar las encuestas propiamente dichas y otra para las respuestas de cada encuesta. Tabla de encuestas: CREATE TABLE encuestas ( id INT not null AUTO_INCREMENT, titulo VARCHAR (100) not null , fecha INT(10) not null , PRIMARY KEY (id)); • Id: Es el identificador de la encuesta. Se incrementa automáticamente y sirve de clave primaria. • Titulo: Tendremos 50 caracteres para asignar un titulo que contendrá la pregunta en sí. • Fecha: Servirá tanto para conocer la fecha de la encuesta, como para que sólo se muestre la última. Tabla de respuestas: CREATE TABLE respuestas ( id INT not null AUTO_INCREMENT, texto VARCHAR (50) not null , votos INT (5) not null , idenc INT not null, PRIMARY KEY (id)); • Id: Identificador de la respuesta. Se incrementa automáticamente y sirve de clave primaria. • Texto: Es el texto que describirá la respuesta • Votos: El total de votos acumulados. • Idenc: Referencia al Id de la encuesta a la que está asociado. Ing. Carlos Bacalla Página 1 de 10
  • 2. Aplicaciones de Internet www.CarlosBacalla.com II. CREAR LA LIBRERÍA DE CONEXIÓN A LA BASE DATOS ARCHIVO: CONEXIÓN.PHP III. DAR DE ALTA UNA NUEVA ENCUESTA La forma de crear una nueva encuesta será sencilla; Un formulario nos pregunta el texto de la pregunta y el número total de respuestas. Damos a "Enviar". Acto seguido tendremos un campo de texto por cada respuesta, donde asignaremos el texto de la respuesta. Volvemos a dar a "Aceptar" y si todo ha ido bien, nuestra encuesta ya estará dada de alta en nuestra base de datos. Primer formulario: encuestas ARCHIVO: ENCUESTA.PHP Ing. Carlos Bacalla Página 2 de 10
  • 3. Aplicaciones de Internet www.CarlosBacalla.com Segundo formulario, dentro de preguntas.php Básicamente lo único que hacemos en este formulario es poner tantos campos de texto como posibles respuestas haya. ARCHIVO: PREGUNTAS.PHP Ing. Carlos Bacalla Página 3 de 10
  • 4. Aplicaciones de Internet www.CarlosBacalla.com El siguiente fichero (proceso.php) es el que se encarga de guardar los cambios en la base de datos. En un primero momento, guardamos tan solo la encuesta, con sus campos 'fecha' y 'titulo'. Posteriormente sacamos el 'id' asignado a nuestra encuesta (la última almacenada) para que al insertar las respuestas podamos hacer referencia al id de la encuesta a la que va asociada. ARCHIVO: PROCESO.PHP Ing. Carlos Bacalla Página 4 de 10
  • 5. Aplicaciones de Internet www.CarlosBacalla.com IV. VOTAR LOS RESULTADOS Tal y como yo he planteado este sistema de encuestas, la única que se mostrará será la que tenga la fecha más reciente, es decir, la última encuesta insertada. Cualquier modificación para evitar este funcionamiento no creo que os suponga mucho esfuerzo. A continuación tenéis el código del formulario para votar la opción que deseada. ARCHIVO: OPCIONES.PHP Ing. Carlos Bacalla Página 5 de 10
  • 6. Aplicaciones de Internet www.CarlosBacalla.com El código que viene a continuación, votacion.php, de momento sólo añade el voto a la base de datos. Más adelante pondremos en éste mismo fichero el código que añade la imagen con el gráfico de barras: ARCHIVO: VOTACION.PHP Ing. Carlos Bacalla Página 6 de 10
  • 7. Aplicaciones de Internet www.CarlosBacalla.com V. MOSTRAR EL GRÁFICO DE BARRAS Para realizar esto lo que haremos es crearnos un fichero que conectará con la base de datos y extraerá la información necesaria. Crearemos una imagen, y le daremos formato con funciones de la librería gd. Quizás a muchos de vosotros os surja la duda, tal y como me ocurrió a mí, de como poner en funcionamiento esta librería: Tenéis que bajaros (en caso de estar en Windows) el archivo php_gd.dll, copiarlo a la carpeta extensions de php y descomentar la línea donde se hace referencia a la DLL en cuestión en el php.ini. El código, aunque a alguno a primera vista os intimide, realmente no tiene complicación alguna, tan solo leemos de la base de datos y dibujamos los elementos de nuestro gráfico de barras: NOTA: Éste fichero ha de conectar con la base de datos. Para que funcione correctamente, tenéis que añadir que incluya conexion.php directamente vosotros en el sitio que corresponda. Dicho queda. Ya lo tenemos todo hecho, tan sólo nos falta incluir un pequeño detalle a nuestro código. En el archivo que capta los votos (votar.php) tenéis que añadir el siguiente código: <img src="votar.php"> Y os coloco una imagen del resultado final de una encuesta cualquiera: ARCHIVO: VOTAR.PHP Ing. Carlos Bacalla Página 7 de 10
  • 8. Aplicaciones de Internet www.CarlosBacalla.com Ing. Carlos Bacalla Página 8 de 10
  • 9. Aplicaciones de Internet www.CarlosBacalla.com VI . PRESENTACIÓN DEL SISTEMA DE ENCUESTA ARCHIVO: INDEX.PHP Ing. Carlos Bacalla Página 9 de 10
  • 10. Aplicaciones de Internet www.CarlosBacalla.com FUENTE ORIGINAL: http://www.programacion.com/php/articulo/encuestas_gd/ Cómo hacer encuestas con PHP y MySQL Autor: Jesus Ruiz-Ayúcar Vázquez EDITADO POR: Ing. Carlos Bacalla www.CarlosBacalla.com Ing. Carlos Bacalla Página 10 de 10