seminario de dql con y mysql - universidad nacional de ...€¦ · fundamentos de php ¿quÉ es...

20
SEMINARIO DE DQL CON PHP Y MY SQL

Upload: others

Post on 30-Apr-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

SEMINARIO DE DQL CON PHP Y MYSQL

Page 2: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

FUNDAMENTOS DE PHP

Page 3: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHP

¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP?

• PHP es un lenguaje de código abierto muy popular, adecuado para desarrollo web y que

puede ser incrustado en HTML.

• PHP se utiliza para generar páginas web dinámicas.

• ¿Cómo trabaja PHP? El lenguaje PHP se procesa en servidores, que son potentes

ordenadores con un software y hardware especial. Cuando se escribe una dirección tipo

http://www.lagaceta.com/index.php

• El esquema es:

Páginas estáticas: Petición --> Respuesta

Páginas dinámicas: Petición --> Procesado y preparación --> Respuesta

Page 4: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHP

SINTAXIS

• De la misma forma que los documentos HTML están estructurado por tags

(etiquetas) , lo mismo sucede en php . De esta forma se puede combinar HTML +

código PHP.

• Los TAGS importantes son

Inicio de código PHP : <?php o <?

Fin de código PHP: ?>

• Las pautas dentro de php son:

Todas las operaciones deben de terminar con ; (punto y coma).

Los comentarios : se definen anteponiendo // o /* y se finaliza con */

Page 5: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPEjemplo

En html seria:

<html>

<head><title>Texto de ejemplo </title></head>

<body><p> Esto es un Texto de Ejemplo </p></body>

</html>

En php seria:

<html>

<head><title>Texto de ejemplo </title></head>

<body><p>

<? echo “ Esto es un Texto de Ejemplo ?>

</p></body>

</html>

Page 6: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPVARIABLES

• Integer: por ejemplo 1

• Double: por ejemplo 3.5

• Booleano: por ejemplo true

• String: por ejemplo “Esta es mi primera cadena en PHP”.

• Array: por ejemplo guardar varios valores en la misma variable.

• Object: para guardar objectos.

Ejemplo:

• $entero = 14;

• $decimal = 5.5;

• $booleano = true;

• $texto = "hello";

• $matriz = array(1,2,3);

• $objeto = (object) array(1,2,3);

Page 7: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPCONSTANTES

• Las constantes son como variables permiten almacenar un valor, pero una vez definidos no se puede cambiar, normalmente se usan para inicializar datos de configuración, ejemplo contraseña de una base de datos.

// constante personalizada

define('BD_PASS', '123456');

// constante definida por defecto en PHP, ejemplo ruta del documento

echo __DIR__;

FUNCIONES

Las funciones son grupos de instrucciones independientes que tienen un propósito determinado, normalmente suelen venir acompañadas de parametros y suelen devolver un valor.

// imprime la fecha actual, ej. 14/09/2017

echo date("d/m/Y");

Page 8: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPCLASES

• Una clase es un contenedor de propiedades y metodos, estas nos ayudan a crear objetos y a mantener un código limpio.

• Cuando creas un nuevo objeto de a partir de una clase por defecto se ejecuta un metodo llamado __construct que nos puede ayudar a definir las propiedades de este.

// creamos la clase Persona

class Persona{

public $nombre;

private $fecha_de_nacimiento;

function __construct($nombre, $fecha_de_nacimiento){

$this->nombre = $nombre;

$this->fecha_de_nacimiento = $fecha_de_nacimiento;

}

Page 9: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPfunction getNombre(){

return $this->nombre;

}

function getFechaDeNacimiento(){

return $this->fecha_de_nacimiento;

}

function setFechaDeNacimiento($fecha_de_nacimiento){

$this->fecha_de_nacimiento = $fecha_de_nacimiento;

}

}

// creamos un nuevo objeto Persona

$persona1 = new Persona("miquel", "01/05/1980");

// cambiar nombre

$persona1->nombre = "Pedro";

Page 10: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHP// imprimir el nombre por pantalla

echo getNombre();

// cambiar la fecha de nacimiento

$persona1->setFechaDeNacimiento("02/04/1982");

// imprimir la fecha de nacimiento

echo $persona1->getFechaDeNacimiento();

Page 11: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPCONDICIONALES

• Las sentencias condicionales nos ayudan a definir reglas para ejecutar un determinado código u otro.

• Si una de las condiciones se cumple se deja de leer el resto en caso contrario se comparará la siguiente regla o si no la hay directamente se irá al else.

// más largo, más legíble

if( $edad > 49 ){

echo "es muy mayor para entrar";

}else if( $edad > 17 ){

echo "mayor de edad";

else{

echo "menor de edad";

}

Page 12: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPCONDICIONALES

• Con la condición switch al igual que if podemos definir varias reglas, la diferencia es que si no ponemos break dentro de cada caso si se cumple o no una regla se comprobará la siguiente regla y así sucesivamente.

switch( $semaforo ){

case 'rojo':

echo 'no puedes pasar';

break;

case 'verde':

echo 'si puedes pasar';

break;

default:

echo 'si anteriormente el color no ha sido rojo y verde, esta sería la opción por defecto ambar';

break;

}

Page 13: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPBUCLES

• El bucle for nos sirve para hacer un bucle con un inicio y final definidos, por ejemplo contar de 1 a 10.

for( $i = 1; $i <= 10; $i++ ){

echo $i;

}

• El foreach nos ayuda a reccorrer los valores de una matriz (array).

$animales = array('perro', 'gato', 'vaca', 'pato');

foreach( $animales as $animal ){

echo $animal;

}

Page 14: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPFUNCIONES RELACIONADAS CON VARIABLES

• gettype($variable) : nos permite obtener el tipo de una variable.

• settype($variable, tipo): nos permite asignarle el tipo a una variable.

• is_array($variable): nos devuelve TRUE si la variable es un array.

• isset($variable): nos devuelve TRUE si la variable es definida.

• unset($variable): detruye una variable y si fue destruida devuelve TRUE.

• is_null($variable): nos devuelve TRUE si es nulo.

Page 15: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHP

MySQLi o DOP

Tanto MySQLi y PDO tienen sus ventajas:

DOP trabajará en 12 sistemas de bases de datos diferentes, donde como MySQLi sólo funciona

con bases de datos MySQL.

Por lo tanto, si tienes que cambiar a otra base de datos, DOP hace que el proceso sea fácil. Sólo

hay que cambiar la cadena de conexión y algunas consultas.

Con MySQLi, tendrá que volver a escribir el código completo - consultas incluidas.

Ambos son orientado a objetos, pero MySQLi también ofrece una API de procedimiento.

Sentencias preparadas protegen de la inyección de SQL, y son muy importantes para la

seguridad de las aplicaciones web.

Page 16: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPAbrir una conexión a MySQL

• Antes de poder acceder a los datos en la base de datos MySQL, tenemos que ser capaces de conectar con el servidor:

Ejemplo

• <?php

$servername = "localhost";

$username = "username";

$password = "password";

// Crear Conexion

$conn = new mysqli($servername, $username, $password);

// Chequear conexion

if ($conn->connect_error) {

die("Connection failed: " . $conn->connect_error);

}

echo "Connected successfully";

?>

Page 17: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPConexión a MySQL(MySQLi Procedural)

Ejemplo

<?php

$servername = "localhost";

$username = "username";

$password = "password";

// Crear conexion

$conn = mysqli_connect($servername, $username, $password);

// Chequear conexion

if (!$conn) {

die(“Fallo de Conexion: " . mysqli_connect_error());

}

echo “Conexión Exitosa";

?>

Page 18: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPConexión a MySQL(PDO)

Ejemplo

<?php

$servername = "localhost";

$username = "username";

$password = "password";

try {

$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);

// establece el modo de error PDO como excepción

$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

echo “Conexión Exitosa";

}

catch(PDOException $e)

{ echo " Fallo de Conexion : " . $e->getMessage();

}

?>

Page 19: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPPHP Seleccionar datos de MySQL (MySQL-i)

Ejemplo

<?php //previamente conectada la base de datos

$sql = "SELECT Dni, Nombre_M, Email FROM MIEMBRO";

$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) { // La salida de cada fila sera los datos cargados

while($row = mysqli_fetch_assoc($result)) {

echo “Dni: " . $row[“Dni"]. " - Nombre: " . $row[“Nombre_M"]. " - Correo

Electronico: " . $row[“Email"]. "<br>";

}

} else {

echo "0 results";

}

mysqli_close($conn);?>

Page 20: SEMINARIO DE DQL CON Y MYSQL - Universidad Nacional de ...€¦ · Fundamentos de PHP ¿QUÉ ES PHP? ¿PARA QUÉ SIRVE PHP? • PHP es un lenguaje de código abierto muy popular,

Fundamentos de PHPPHP Seleccionar datos de MySQL (PDO)

Ejemplo

<?php //previamente conectada la base de datos

$sql = " SELECT Dni, Nombre_M, Email FROM MIEMBRO ";

$result = $conn->query($sql);

if ($result->num_rows > 0) {

echo "<table><tr><th>DNI</th><th>Nombre</th><th>Correo Electronico</th></tr>";

// La salida de cada fila sera los datos cargados

while($row = $result->fetch_assoc()) {

echo "<tr><td>" .$row[“Dni"]."</td><td>".$row[“Nombre_M"]."

</td><td>".$row[“Email"]."</td></tr>";

} echo "</table>";

} else { echo "0 results";

}

$conn->close(); ?>