Tecnologías Web de Cliente

Bases de Datos con PHP
Departamento de Ingeniería de Sistemas Telemáticos
http://moodle.dit.up...
Índice
Gestionar mySQL
– PhpMyAdmin
– Eclipse Quantum
Acceso a bases de datos en PHP
– PDO
– Ejemplos insertar, consulta...
Gestionar mySQL
●

Podemos realizarlo
– A través de un terminal (ejecutar en shell
mysql, …)
– A través de un navegador
• ...
MySQL - phpMyAdmin
●

Tienes que tener instalado mysql-server

Si no recuerdas la contraseña, cámbiala
con
●

Puedes insta...
phpmyadmin
Tenemos que enlazar la aplicación
/usr/share/phpmyadmin
●

– sudo ln -s /usr/share/phpmyadmin /var/www

Si tene...
Crear BBDD

6
Crear tabla

7
Crear tabla - visual

8
Crear tabla – importar (I)
demo_departamentos.sql

9
Crear tabla – importar (II)

10
Importado!

11
Eclipse - Quantum
Tienes que haber creado antes una base
de datos ejemplos_tewc y la tabla
departamentos
●

●

Suponemos q...
Eclipse: Quantum
●

Help->Install new software
– Añadir
http://quantum.sourceforge.net/update-site

13
Quantum: Cómo usarlo (I)
Eclipse->Help->Help Contents y
seleccionar QuantumDB
●

Window->Open
Perspective->Other->Quantum ...
Quantum: bookmark mySQL
Crear un bookmark a mysql en la
pespectiva Quantum DB
●

15
Pasos crear bookmark
●

New bookmark-> add driver

16
Add Driver

17
Crear conexión

18
Y ya podemos ejecutar SQL

19
Acceso a BBDD en PHP
Para acceder a bases de datos relacionales,
podemos usar
●

– Drivers de un SGBD específico (p.ej. Pa...
Pasos Acceso BBDD
●

1. Crear conexión

●

2. Interactuar con la BBDD

21
Conectar con la BBDD
conectar.php

Notación PHP
para objetos
22
Listar – versión simple

23
Listar – sentencia
preparada SQL

24
Insertar - simple

25
Insertar - preparada

26
Publicar json

27
JSONP
JSONP (JSON con Padding) es una técnica
de comunicación en programas JS para pedir
datos a un servidor en otro domin...
JSONP jsonp.php

Llamamos a la función
que nos pasan pasándole
el json

29
JQuery – listado_json.php

30
Listado con json

Podríamos hacerlo
generando el HTML
desde PHP en vez de JS
31
Firebug... Parámetros

32
Encabezados...

33
Respuesta...

34
… y JSON

35
Otros métodos PDO
El resto de operaciones SQL son iguales en
PDO. Ej.
●

36
Añadir departamento (I)

37
Añadir departamento (II)

38
Añadir depto - error

39
Formulario depto (I)

40
Formulario depto (II)

41
annade_departamento (I)

42
annade_departamento (II)

43
annade_departamento (III)

44
Conclusiones
PHP da muy buen soporte para el acceso a
base de datos, con diferentes opciones
●

Hemos visto PDO, orientada...
Referencias
Programming PHP, O'Reilly, 2013,

●

– http://proquest.safaribooksonline.com/book/
programming/php/97814493610...
Upcoming SlideShare
Loading in...5
×

PHP. Bases de Datos

626

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
626
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "PHP. Bases de Datos"

  1. 1. Tecnologías Web de Cliente Bases de Datos con PHP Departamento de Ingeniería de Sistemas Telemáticos http://moodle.dit.upm.es
  2. 2. Índice Gestionar mySQL – PhpMyAdmin – Eclipse Quantum Acceso a bases de datos en PHP – PDO – Ejemplos insertar, consultar, borrar, actualizar – Ejemplo con JSOP y jquery 2
  3. 3. Gestionar mySQL ● Podemos realizarlo – A través de un terminal (ejecutar en shell mysql, …) – A través de un navegador • Paquete phpMyAdmin, disponible para todos los sistemas operativos y normalmente habilitado en los sitios de hosting – A través del IDE, instalar un plugin para conectarse a mySQL 3
  4. 4. MySQL - phpMyAdmin ● Tienes que tener instalado mysql-server Si no recuerdas la contraseña, cámbiala con ● Puedes instalar phpMyAdmin en Linux (o Windows, o...) sigue la documentación de ● – https://phpmyadmin-spanish.readthedocs.or g/en/latest/ 4
  5. 5. phpmyadmin Tenemos que enlazar la aplicación /usr/share/phpmyadmin ● – sudo ln -s /usr/share/phpmyadmin /var/www Si tenemos redirigido el document root de apache a otro sitio, podemos redirigirlo a /var/www o bien enlacar al nuevo document root ● – Luego apuntamos a http://localhost/phpmyadmin y accedemos a l a consola 5
  6. 6. Crear BBDD 6
  7. 7. Crear tabla 7
  8. 8. Crear tabla - visual 8
  9. 9. Crear tabla – importar (I) demo_departamentos.sql 9
  10. 10. Crear tabla – importar (II) 10
  11. 11. Importado! 11
  12. 12. Eclipse - Quantum Tienes que haber creado antes una base de datos ejemplos_tewc y la tabla departamentos ● ● Suponemos que la has creado – Con phpMyAdmin – Desde terminal (Linux/Windows): – mysql -uroot -p --default-character-set=utf8 ejemplos_tewc <ruta>/demo_departamentos.sql 12
  13. 13. Eclipse: Quantum ● Help->Install new software – Añadir http://quantum.sourceforge.net/update-site 13
  14. 14. Quantum: Cómo usarlo (I) Eclipse->Help->Help Contents y seleccionar QuantumDB ● Window->Open Perspective->Other->Quantum DB ● Necesitamos el driver (jar) JDBC de MySQL. Hay que descargarlo de: ● – http://dev.mysql.com/downloads/connector/j/ – Hay una versión del jar en moodle 14
  15. 15. Quantum: bookmark mySQL Crear un bookmark a mysql en la pespectiva Quantum DB ● 15
  16. 16. Pasos crear bookmark ● New bookmark-> add driver 16
  17. 17. Add Driver 17
  18. 18. Crear conexión 18
  19. 19. Y ya podemos ejecutar SQL 19
  20. 20. Acceso a BBDD en PHP Para acceder a bases de datos relacionales, podemos usar ● – Drivers de un SGBD específico (p.ej. Para SQL, usar MySQLi) – Drivers genéricos, PDO Los drivers genéricos permiten cambiar fácilmente de un SGBD a otro ● PHP también soporta acceso a SGBD noSQL como MongoDB u otros ● 20
  21. 21. Pasos Acceso BBDD ● 1. Crear conexión ● 2. Interactuar con la BBDD 21
  22. 22. Conectar con la BBDD conectar.php Notación PHP para objetos 22
  23. 23. Listar – versión simple 23
  24. 24. Listar – sentencia preparada SQL 24
  25. 25. Insertar - simple 25
  26. 26. Insertar - preparada 26
  27. 27. Publicar json 27
  28. 28. JSONP JSONP (JSON con Padding) es una técnica de comunicación en programas JS para pedir datos a un servidor en otro dominio, que normalmente está prohibido por la política del mismo origen. ● 1. Enviamos como parámetro la función javascript que empaquetará los datos JSON ● 2. Recibimos los datos como una función JS y ejecutamos esa función (que es nuestra) ● 28
  29. 29. JSONP jsonp.php Llamamos a la función que nos pasan pasándole el json 29
  30. 30. JQuery – listado_json.php 30
  31. 31. Listado con json Podríamos hacerlo generando el HTML desde PHP en vez de JS 31
  32. 32. Firebug... Parámetros 32
  33. 33. Encabezados... 33
  34. 34. Respuesta... 34
  35. 35. … y JSON 35
  36. 36. Otros métodos PDO El resto de operaciones SQL son iguales en PDO. Ej. ● 36
  37. 37. Añadir departamento (I) 37
  38. 38. Añadir departamento (II) 38
  39. 39. Añadir depto - error 39
  40. 40. Formulario depto (I) 40
  41. 41. Formulario depto (II) 41
  42. 42. annade_departamento (I) 42
  43. 43. annade_departamento (II) 43
  44. 44. annade_departamento (III) 44
  45. 45. Conclusiones PHP da muy buen soporte para el acceso a base de datos, con diferentes opciones ● Hemos visto PDO, orientada a objetos, que nos da un driver no dependiente del SGBD ● Podemos combinar fácilmente tecnologías de cliente y servidor con JSON ● 45
  46. 46. Referencias Programming PHP, O'Reilly, 2013, ● – http://proquest.safaribooksonline.com/book/ programming/php/9781449361068 Head first PHP & MySQL, O'Reilly, 2008, ● – http://proquest.safaribooksonline.com/book/ databases/mysql/9780596157739 46
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×