Programación de MySQL desde PHP

13
1 Actividad 2.3. Programación de MySQL desde PHP NOMBRE DE LA PRÁCTICA: Programación de MySQL desde PHP UNIDAD TEMÁTICA: II. Programación de una aplicación Web TEMA: 2.4 Métodos de conexión a datos usando directamente los drivers del proveedor. OBJETIVO DE LA PRÁCTICA: Al finalizar esta práctica el estudiante será capaz de: a) Utilizar MySQL para crear una base de datos. b) Utilizar la clase BDMySql para conectarse a un servidor MySQL y ejecutar algunas consultas vía el lenguaje de programación PHP. ELABORÓ: Javier Nolasco Hernández PERIODO DE ELABORACIÓN: Mayo Agosto 2012 TIEMPO DE LA PRÁCTICA: 2 hrs. FECHA: DESCRIPCIÓN: En esta práctica se emplea el manejador de base de datos relacional MySQL para crear una base de datos (escuela) y una tabla (alumnos). Después se tiene acceso a la tabla alumnos mediante el lenguaje PHP para insertar registros y mostrar el contenido de la tabla. PHP permite el acceso a los datos almacenados en una base de datos creada en MySQL, mediante la invocación de funciones predefinidas. Algunas de estas funciones de PHP relacionadas con el acceso a datos en MySQL son las siguientes: Función Descripción mysql_affected_rows Devuelve el número de registros afectados mysql_close Cierra una conexión MySQL mysql_connect Abre una conexión mysql_query Ejecuta una consulta mysql_num_fields Devuelve el número de campos en un resultado mysql_num_rows Devuelve el número de renglones en un resultado mysql_field_name Devuelve el nombre de un campo mysql_fetch_array Obtiene un registro como un arreglo

description

En esta práctica se emplea el manejador de base de datos relacional MySQL para crear una base de datos (escuela) y una tabla (alumnos). Después se tiene acceso a la tabla alumnos mediante el lenguaje PHP para insertar registros y mostrar el contenido de la tabla.

Transcript of Programación de MySQL desde PHP

Page 1: Programación de MySQL desde PHP

1

Actividad 2.3. Programación de MySQL desde PHP

NOMBRE DE LA PRÁCTICA: Programación de MySQL desde PHP

UNIDAD TEMÁTICA: II. Programación de una aplicación Web

TEMA: 2.4 Métodos de conexión a datos usando directamente los

drivers del proveedor.

OBJETIVO DE LA PRÁCTICA: Al finalizar esta práctica el estudiante será capaz de:

a) Utilizar MySQL para crear una base de datos.

b) Utilizar la clase BDMySql para conectarse a un servidor

MySQL y ejecutar algunas consultas vía el lenguaje de

programación PHP.

ELABORÓ: Javier Nolasco Hernández

PERIODO DE ELABORACIÓN: Mayo – Agosto 2012

TIEMPO DE LA PRÁCTICA: 2 hrs. FECHA:

DESCRIPCIÓN:

En esta práctica se emplea el manejador de base de datos relacional MySQL para crear una base de

datos (escuela) y una tabla (alumnos). Después se tiene acceso a la tabla alumnos mediante el

lenguaje PHP para insertar registros y mostrar el contenido de la tabla.

PHP permite el acceso a los datos almacenados en una base de datos creada en MySQL, mediante la

invocación de funciones predefinidas. Algunas de estas funciones de PHP relacionadas con el acceso

a datos en MySQL son las siguientes:

Función Descripción

mysql_affected_rows Devuelve el número de registros afectados

mysql_close Cierra una conexión MySQL

mysql_connect Abre una conexión

mysql_query Ejecuta una consulta

mysql_num_fields Devuelve el número de campos en un resultado

mysql_num_rows Devuelve el número de renglones en un resultado

mysql_field_name Devuelve el nombre de un campo

mysql_fetch_array Obtiene un registro como un arreglo

Page 2: Programación de MySQL desde PHP

2

Acudir al laboratorio de cómputo a desarrollar las actividades especificadas en la sección procedimiento del presente documento.

MATERIALES, EQUIPOS E INSUMOS:

1. Laboratorio con computadoras de escritorio en servicio y con acceso a internet. 2. Cada equipo de cómputo debe tener instalado el siguiente software:

• Sistema Operativo Windows XP o Windows 7.

• Internet Explorer y/o Mozilla Firefox

• Editor de texto (Araneae y/o Notepad++)

• XAMPP PROCEDIMIENTO:

1. Abrir el navegador web y ejecutar http://localhost:8080/xampp/ � Enter. 2. En la página que aparece en el navegador seleccionar y ejecutar la opción phpMyAdmin del

menú Herramientas.

3. Aparece la siguiente pantalla:

4. Seleccionar la pestaña SQL � Crear una base de datos llamada escuela � Indicar que se desea usar la base de datos escuela � Crear una tabla llamada alumnos � Continuar (ver la siguiente figura):

Page 3: Programación de MySQL desde PHP

3

5. Después de oprimir continuar aparece la figura de abajo, en la que se indica que se han ejecutado las consultas anteriores con éxito.

6. Crear la carpeta C:\xampp\htdocs\bdmysql y en dicha carpeta crear los archivos bd.php y appbd.php.

7. Editar el archivo bd.php de acuerdo a la siguiente figura:

Page 4: Programación de MySQL desde PHP

4

Page 5: Programación de MySQL desde PHP

5

8. Editar el archivo appbd.php de acuerdo a la siguiente figura:

Page 6: Programación de MySQL desde PHP

6

9. Ejecutar la página http://localhost:8080/bdmysql/appbd.php, proporcionar el registro, nombre y teléfono de algún alumno y oprimir el botón Insertar. Después oprimir el botón Ver Tabla.

Page 7: Programación de MySQL desde PHP

7

10. Agregar los datos de otros dos alumnos y oprimir el botón Ver Tabla.

Page 8: Programación de MySQL desde PHP

8

RESULTADOS Y ANÁLISIS:

En el archivo bd.php se crea la clase BDMySql en la que se definen 5 atributos y 5 métodos. Los

comentarios que siguen a los atributos explican el propósito de los mismos, por lo que a

continuación se explica, a groso modo, el comportamiento de los métodos.

Método o función Descripción

BDMySql($nbd, $ns, $nu, $c){ … }

Método constructor de la clase. Establece los atributos con los valores de las variables que el método usa como parámetros.

conectar(){ … } Devuelve 1 si la conexión al servidor y la selección de la base de datos fueron exitosas, de lo contrario regresa 0. La función mysql_connect permite hacer una conexión al servidor de base de datos MySQL, y devuelve un valor diferente de nulo si la conexión fue exitosa y un valor nulo en caso de que dicha conexión fracase. Durante el llamado a la función mysql_connect, es necesario pasar tres argumentos. El primero indica el nombre del servidor, el segundo se refiere al nombre de usuario y el tercero a la contraseña del usuario.

Page 9: Programación de MySQL desde PHP

9

La función mysql_select_db se usa para seleccionar una base de datos del servidor al que ya nos hemos conectado, y devuelve un valor diferente de nulo si la selección de la base de datos fue exitosa y un valor nulo en caso contrario. Durante el llamado a la función mysql_select_db, es necesario pasar dos argumentos: El nombre de la base de datos a seleccionar y una variable que contenga una referencia de conexión al servidor.

desconectar(){ … } Verifica si la variable que tiene una referencia a la conexión con el servidor MySQL es diferente de nula y si es así cierra la conexión. La función mysql_close cierra una conexión abierta, establecida previamente mediante mysql_connect, por lo que cuando se hace un llamado a mysql_close es necesario proporcionar como argumento una referencia a una conexión abierta.

cargarTabla($consulta){ … } Si la conexión al servidor y la selección de la base de datos son exitosos, se ejecuta la consulta de selección SQL pasada como argumento en la variable $consulta y la tabla resultante se muestra en pantalla. La función mysql_query ejecuta la consulta pasada como primer argumento sobre la conexión indicada en el segundo argumento, y devuelve el resultado como una tabla, en caso de que la consulta sea de selección, o bien como un valor entero si la consulta es de acción. En el ejemplo se asume que la consulta pasada como primer argumento es de selección. La función mysql_num_fields devuelve el número de campos o columnas de una tabla. La función mysql_field_name devuelve el nombre del campo del índice especificado como segundo argumento, de la tabla especificada como primer argumento. La función mysql_fetch_array recibe como argumento una tabla y se encarga de recuperar el renglón actual como un arreglo de elementos que se pueden indexar desde 0.

ejecutarConsultaAccion($consulta){ … }

Si la conexión al servidor y la selección de la base de datos son exitosos, se ejecuta la consulta de acción SQL pasada como argumento en la variable $consulta. En el ejemplo se asume que la consulta pasada como primer argumento es de acción (insert, delete y

Page 10: Programación de MySQL desde PHP

10

update), por lo que en este caso mysql_query regresa un valor entero que indica el número de registros afectados por la consulta de acción.

Por otro lado, en el archivo appbd.php (que actúa como aplicación o página principal):

Código Descripción

require(“bd.php”) Permite la inclusión del código del archivo bd.php

$bd = new BDMySql(“escuela”, “localhost”, “root”, “”);

Crea un objeto $bd de tipo BDMySql. Hace un llamado al método constructor de la clase BDMySql, pasándole como argumentos: el nombre de la base de datos, el nombre del servidor, el nombre del usuario y la contraseña del usuario.

if($_POST[‘btnVerTabla’]){ $bd->cargarTabla( “select * from alumnos”); }

Se comprueba si el usuario oprimió el botón llamado btnVerTabla. Si es así, se hace un llamado al método cargarTabla del objeto $bd.

CUESTIONARIO

1. Agregar a la clase BDMySql un método con la siguiente firma: function cargarTablaConColores($consulta, $colorEncabezado, $colorFilaPar, $colorFilaImpar){…}

de tal forma que al invocarlo mediante el botón Ver Tabla produzca el resultado de la

siguiente figura.

Page 11: Programación de MySQL desde PHP

11

Es decir, tiene la misma funcionalidad que la función cargarTabla, pero el color de fondo del

encabezado, el color de fondo de los registros pares y el color de fondo de los registros

impares son argumentos adicionales proporcionados por el usuario cuando se invoca a la

función. Un ejemplo de llamado a dicha función es:

$bd->cargarTablaConColores("select * from alumnos", "C8FA64", "FAFA64", "FA96C8");

2. Modificar la aplicación anterior para incorporar dos botones, uno para eliminar un registro y el otro para actualizar un registro de la tabla Alumnos.

REFERENCIAS

http://php.net/manual/pt_BR/function.mysql-connect.php

http://php.net/manual/es/function.mysql-select-db.php

http://www.php.net/manual/pt_BR/function.mysql-close.php

http://php.net/manual/es/function.mysql-query.php

http://php.net/manual/es/function.mysql-num-fields.php

http://php.net/manual/es/function.mysql-field-name.php

Page 12: Programación de MySQL desde PHP

12

http://php.net/manual/es/function.mysql-fetch-array.php

RÚBRICA DE ACTIVIDAD 2.3 Programación de MySQL desde PHP

INDICADOR O

VARIABLE DESCRIPCIÓN PORCENTAJE

ACTITUD

Puntualidad El alumno se presenta dentro de la tolerancia establecida

en las políticas de curso y reglamentos vigentes. 10

Trabajo en

equipo

El alumno participa activamente en su equipo (en caso de

no haber suficientes máquinas). 10

DESEMPEÑO

Procedimiento de organización

en equipo

La organización y comunicación en el equipo permitió generar óptimos resultados (en caso de no haber

suficientes máquinas). 10

Procedimiento de identificación

de la sintaxis para la creación

de la clase BDMySql y del

objeto de dicha clase para

invocar

métodos.

La ejecución del procedimiento les permitió identificar la sintaxis para crear la clase BDMySql, lo que implica identificar la sintaxis para definir los atributos y métodos de dicha clase (archivo bd.php). Más adelante, identifica la sintaxis de creación de un objeto de tipo BDMySql, lo que le permitirá tener acceso a la base de datos de MySQL, al ejecutar algunas consultas de selección y acción,

utilizando PHP desde la aplicación principal (appbd.php).

20

Desarrollo de actividades de

currícula

Adecuada ejecución del procedimiento para obtener los resultados deseados (el alumno sigue de manera estricta

los pasos del procedimiento):

-Definir la clase BDMySql en el archivo bd.php.

-Creación de la página principal appbd.php que representa

la interfaz en HTML de la aplicación y en la que se:

a) Incluye la clase definida en bd.php.

b) Crea un objeto de tipo BDMySql, mediante el cual se tiene acceso a los métodos que permiten la conexión con el servidor, la selección de la base de datos, la ejecución de

consultas de selección y acción, etc.

c) Comprueba el botón que oprimió el usuario y en función de eso se ejecuta el método apropiado del objeto de tipo

30

Page 13: Programación de MySQL desde PHP

13

BDMySql.

PRODUCTO

Presentación de conclusiones y

forma de

entrega

La práctica se desarrolló correctamente y de manera óptima emitiendo conclusiones de las actividades

desarrolladas con base al aprendizaje obtenido.

Se cumplió con la forma de entrega que consiste en:

Especificar el procedimiento utilizando para resolver el cuestionario de

esta actividad en un archivo llamado CuestionarioActividad2_3.

20

TOTAL 100