View
218
Download
0
Category
Preview:
Citation preview
PHP y MySQLYeray Caballero López
Juan Pablo Quesada Nieves
Yeray Caballero López - Juan Pablo Quesada Nieves 2
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 3
Contenido
Bloque II
Formularios Acceso a bases de datos MySQL Sesiones y Cookies Ficheros Programación Orientada a Objetos en PHP
Yeray Caballero López - Juan Pablo Quesada Nieves 4
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 5
Bases del desarrollo web
Arquitectura
Cliente - Servidor
Cliente: Explorer, FireFox, Safari
Servidor: Apache, IIS
Tecnología
Cliente: CSS, Flash, HTML, JavaScript
Servidor: C#, Java, PHP, Phyton
Yeray Caballero López - Juan Pablo Quesada Nieves 6
Cliente, navegador como Internet Explorer, Firefox, Opera, Safari, ...Los navegadores interactúan con el servidor a través de protocolos. Estos protocolos definen las reglas de intercambio de información entre el cliente y el servidor
Servidor, software responsable de aceptar las solicitudes HTTP del cliente y de enviarle las respuestas (HTML, XML)
HTTP, protocolo de transferencia de hipertexto.HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. ¿Cómo sabe el servidor si la solicitud la hago yo o la hace otra persona? … (Cookies, Sesiones)
Bases del desarrollo web
Yeray Caballero López - Juan Pablo Quesada Nieves 7
Bases del desarrollo web
Cookies y sesionesEl protocolo HTTP es incapaz por sí solo de mantener el estado entre dos transacciones. El objetivo de las cookies y las sesiones en el servidor es precisamente identificar las solicitudes de un usuario y distinguirlas del resto
Yeray Caballero López - Juan Pablo Quesada Nieves 8
Bases del desarrollo web
Diálogo entre cliente y servidor
Yeray Caballero López - Juan Pablo Quesada Nieves 9
Bases del desarrollo web
Modelos de comunicación cliente - servidor
Modelo Síncrono
Modelo Asíncrono (Ajax)
Yeray Caballero López - Juan Pablo Quesada Nieves 10
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 11
Fundamentos de PHP
Qué es PHP
Lenguaje script, interpretado y de tipado débil Fue escrito por el danés Rasmus Lerdorf en 1994 Es un lenguaje del lado del servidor Originalmente diseñado para producir webs
Yeray Caballero López - Juan Pablo Quesada Nieves 12
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 13
Fundamentos de PHP
Literales – Variables - ConstantesLiterales
Dos formas de definir los literales : comillas simples y comillas dobles Las comillas dobles evalúan variables y expresiones dentro del literal; las
comillas simples no
Constantes
Yeray Caballero López - Juan Pablo Quesada Nieves 14
Fundamentos de PHP
Literales – Variables - ConstantesVariables
En PHP no es necesario declarar las variables Las variables se crean al asignarles un valor Todas las variables en PHP empiezan por '$' ($productsList, $title,
$connection) Es case-sensitive ($quantity es distinto a $Quantity)
Yeray Caballero López - Juan Pablo Quesada Nieves 15
Fundamentos de PHP
Literales – Variables - Constantes
Variables. Tipos de datos integer, double, string, boolean, array, object PHP es un lenguaje de tipado débil El tipo de una variable vendrá determinado por el valor que se le asigne
$state = 0; // integer$state = “Successful”; // string
Conversión de tipos explícita$total_amount = (double) $quantity
Ejemplos de variables de distintos tipos :$variable_integer = 3;
$variable_double = 4.5; $variable_boolean = true; // (true, false) $array[0] = ‘value’;$array[1] = 23;$person = new Person(‘Raul’, ‘López’);
PHP evalúa cualquier valor distinto de cero como true y cero como falso
Yeray Caballero López - Juan Pablo Quesada Nieves 16
Fundamentos de PHP
Literales – Variables - Constantes
Variables. Funciones relacionadas con los tipos
Yeray Caballero López - Juan Pablo Quesada Nieves 17
Fundamentos de PHP
Literales – Variables - Constantes
Variables. Otras funciones Las siguientes son funciones útiles, sobre todo, para comprobar si se
enviaron las variables de formulario
Yeray Caballero López - Juan Pablo Quesada Nieves 18
Fundamentos de PHP
Literales – Variables - Constantes
Variables. Ámbito Global entre scripts Global a un script Locales
PHP 5 incluye variables estáticas
Una variable estática existe en el ámbito de un bloque, pero no pierde su valor cuando la ejecución del programa sale de ese ámbito
IMPORTANTE limitar el ámbito de las variables todo lo posible
Yeray Caballero López - Juan Pablo Quesada Nieves 19
Fundamentos de PHP
Literales – Variables - Constantes
Variables predefinidas en PHP
Yeray Caballero López - Juan Pablo Quesada Nieves 20
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 21
Fundamentos de PHP
OperadoresOperadores aritméticos
Operadores de cadenas – Concatenación
Yeray Caballero López - Juan Pablo Quesada Nieves 22
Fundamentos de PHP
OperadoresOperadores de comparación
Operadores lógicos
Yeray Caballero López - Juan Pablo Quesada Nieves 23
Fundamentos de PHP
OperadoresOperadores de asignación
Operador de referencia (&) Este operador permite obtener la referencia o dirección de memoria de
una variable
$name1
$name2Bob
Yeray Caballero López - Juan Pablo Quesada Nieves 24
Fundamentos de PHP
OperadoresOperadores de supresión de errores
Este operador suprimirá el error de manera que no se muestre por pantalla
El mensaje de error se almacenará en la variable global $php_errormsg
Yeray Caballero López - Juan Pablo Quesada Nieves 25
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 26
Fundamentos de PHP
Estructuras de controlif … else …, if … elseif … else
if (condición) { sentencias }if (condición) { sentencias } else { sentencias }if (condición) { sentencias } elseif (condición) { sentencias } …
Las llaves son necesarias cuando hay más de una sentencia
Yeray Caballero López - Juan Pablo Quesada Nieves 27
Fundamentos de PHP
Estructuras de controlswitch
switch ($variable) {
case Valor1: ...; break; case Valor2: ...; break; [default: ...; break;]
}
Yeray Caballero López - Juan Pablo Quesada Nieves 28
Fundamentos de PHP
Estructuras de controlwhile
while (condición) sentencia;
while (condición) { sentencia1; sentencia2; … sentencian; }
Operadores break y continue;
Yeray Caballero López - Juan Pablo Quesada Nieves 29
Fundamentos de PHP
Estructuras de controldo while
do { sentencias } while (condición);
Yeray Caballero López - Juan Pablo Quesada Nieves 30
Fundamentos de PHP
Estructuras de controlfor
for (var = valor_inicial; condición; var++) sentencia;
for (var = valor_inicial; condición; var++) { sentencias }
Yeray Caballero López - Juan Pablo Quesada Nieves 31
Fundamentos de PHP
Estructuras de controlforeach
foreach(variable_array as $value) sentencia;foreach(variable_array as $value) { sentencias }foreach(variable_array as $key => $value) sentencia;foreach(variable_array as $key => $value) { sentencias }
El bucle itera sobre la lista devolviendo un elemento de la lista en cada iteración
Yeray Caballero López - Juan Pablo Quesada Nieves 32
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 33
Funciones
Funciones
function nombre_funcion(param1,…paramn) {
sentencias [return valor;]
}
Yeray Caballero López - Juan Pablo Quesada Nieves 34
Funciones
Paso de parámetros
Todos los parámetros son por valor si no se especifica lo contrario Para pasar una variable por referencia se antepone & Se permiten parámetros por defecto (el parámetro por defecto tiene
que estar a la derecha de cualquier parámetro sin valor) PHP permite un número ilimitado de parámetros (ninguna sintaxis
especial)
func_num_args(): devuelve el nº de args pasados a la funciónfunc_get_arg(int num_arg): devuelve un arg de la listafunc_get_args(): devuelve un array copia de la lista de args
Yeray Caballero López - Juan Pablo Quesada Nieves 35
Funciones
Paso de parámetros por valor
Paso de parámetros por referencia
Yeray Caballero López - Juan Pablo Quesada Nieves 36
Funciones
Parámetros ilimitados
Parámetros por defecto
Yeray Caballero López - Juan Pablo Quesada Nieves 37
Funciones
return
La palabra reservada return permite devolver valores de las funciones Si lo que se quiere es devolver una referencia se tiene que usar & tanto en la
declaración de la función como en la asignación del valor de retorno a una variable
function & returns_reference() { return $someref;}
$newref = & returns_reference();
Yeray Caballero López - Juan Pablo Quesada Nieves 38
Funciones
include, require
Permiten cargar funciones y variables declaradas en otros scripts (reutilización)
Similares a #include de C Se pueden incluir en cualquier parte del script Ambas tiene la misma funcionalidad, con pequeñas diferencias:
– include, si no puede cargar el fichero, no provocará ningún error<? include ("archivo") ?>
– require, si no puede cargar el fichero, provocará un error fatal<? require("archivo") ?>
Yeray Caballero López - Juan Pablo Quesada Nieves 39
Contenido
Bloque I
Bases del desarrollo web Fundamentos de PHP
Qué es PHP Literales – Variables – Constantes Operadores Estructuras de control Funciones Arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 40
Arrays
Conocidos como matrices o arrays en PHP Muy utilizados (estructuras de datos, opciones de
configuración, idiomas) En PHP existen dos tipos de arrays:
– arrays escalares, cuyo índice es un entero– arrays asociacitos, cuyo índice es una string
0 21
Ana Juan Pepe
índice
valor
amigos[0] amigos[1] amigos[2]
Junio AgostoJulio
28 29 30
índice
valor
temp[‘Junio’] temp[‘Julio’] temp[‘Agosto’]
Array escalar Array asociativo
Yeray Caballero López - Juan Pablo Quesada Nieves 41
Arrays
Creación e inicialización de arrays
¡ Débilmente tipado !
Operador []
Array vacío!
Yeray Caballero López - Juan Pablo Quesada Nieves 42
Arrays
Creación e inicialización de arrays
Constructor array
Array vacío!
¡ Débilmente tipado !
Yeray Caballero López - Juan Pablo Quesada Nieves 43
Arrays
Arrays multidimensionales
Yeray Caballero López - Juan Pablo Quesada Nieves 44
Arrays
Recorrido
for (var = valor_inicial; condición; var++) sentencia;for (var = valor_inicial; condición; var++) { sentencias }
count(variable_array): devuelve el número de elementos del array
Yeray Caballero López - Juan Pablo Quesada Nieves 45
Arrays
Recorrido
foreach(variable_array as $value) sentencia;foreach(variable_array as $value) { sentencias }foreach(variable_array as $key => $value) sentencia;foreach(variable_array as $key => $value) { sentencias }
Yeray Caballero López - Juan Pablo Quesada Nieves 46
Arrays
Funciones relacionadas con los arrays
Yeray Caballero López - Juan Pablo Quesada Nieves 47
Contenido
Bloque II
Formularios Acceso a bases de datos MySQL Sesiones y Cookies Ficheros Programación Orientada a Objetos en PHP
Yeray Caballero López - Juan Pablo Quesada Nieves 48
Formularios
Formularios HTML
<form action=“” method=“”> …</form>
action define el tipo de acción a llevar a cabo con el formulario. Existen dos posibilidades:
– el formulario es enviado a una dirección de correo electrónico– el formulario es enviado a un programa o script que procesa su
contenido method se encarga de especificar la forma en la que el formulario es
enviado. Los dos valores posibles que puede tomar esta atributo son post y get
Yeray Caballero López - Juan Pablo Quesada Nieves 49
Formularios
Elementos de formulario
<input name=“nombre” type=“text”>
<input name=“nombre” type=“password”>
<textarea name=“nombre” rows=n_filas cols=n_columnas></textarea>
<select name=“nombre”> <option>opción1</option> … <option>opciónn</option></select>
<input name=“nombre” type=“radio” value=“valor”>Texto
<input name=“nombre” type=“checkbox”>Texto
Yeray Caballero López - Juan Pablo Quesada Nieves 50
Formularios
Envío y borrado en formularios HTML
<input type="submit" value="Enviar">
<input type=“reset" value=“Borrar">
Ejemplo de formulario:
<form action=“login.php” method=“post” name=“login”>
Usuario: <input name=“user” type=“text”> Contraseña: <input name=“pass” type=“password”> <input type=“submit” value=“Login”></form>
Yeray Caballero López - Juan Pablo Quesada Nieves 51
Formularios
Yeray Caballero López - Juan Pablo Quesada Nieves 52
Formularios
Recepción de las variables de formulario
$_GET[‘variable’]$_POST[‘variable’]
Estos arrays asociativos contienen las variables transferidas de una página a otra a través de un formulario. Dependiendo del método utilizado (get o post) en el formulario, las variables estarán en uno u otro
Yeray Caballero López - Juan Pablo Quesada Nieves 53
Contenido
Bloque II
Formularios Acceso a bases de datos MySQL Sesiones y Cookies Ficheros Programación Orientada a Objetos en PHP
Yeray Caballero López - Juan Pablo Quesada Nieves 54
Acceso a bases de datos MySQL
MySQL y phpMyAdmin
MySQL es un sistema gestor de bases de datos relacionales multiusuario phpMyAdmin es una herramienta para la administración de MySQL
Yeray Caballero López - Juan Pablo Quesada Nieves 55
Acceso a bases de datos MySQL
Operaciones con MySQL Conexión con MySQL:
$conexion = mysql_connect(“host”,”usuario”,”password”);
Selección de base de datos en MySQL:mysql_select_db(“nombre_de_base_de_datos”, $conexion);
Trabajo con tablas:$consulta = mysql_query(“sentencia_sql”, $conexion);
$registro = mysql_fetch_array($consulta); //mysql_fetch_array() devuelve un //array asociativo
Cierre de la conexión con MySQL:mysql_close($conexion);
Yeray Caballero López - Juan Pablo Quesada Nieves 56
Acceso a bases de datos MySQL
Sentencias básicas SQL SELECT (consultas a la base de datos):
SELECT * | campo[,campo]FROM tabla[,tabla][WHERE condicion];
INSERT (inserción de registros):INSERT INTO tabla [(campo[,campo])]VALUES (valor[,valor]);
UPDATE (actualización de registros):UPDATE tablaSET campo=nuevo_valor_campo [campo=nuevo_valor_campo][WHERE condicion];
DELETE (borrado de registros):DELETE FROM tabla[WHERE condicion];
Yeray Caballero López - Juan Pablo Quesada Nieves 57
Contenido
Bloque II
Formularios Acceso a bases de datos MySQL Sesiones y Cookies Ficheros Programación Orientada a Objetos en PHP
Recommended