Date post: | 02-Feb-2016 |
Category: |
Documents |
Upload: | maria-luz-cordoba-ortiz-de-zarate |
View: | 233 times |
Download: | 0 times |
Powerpoint TemplatesPage 1
Powerpoint TemplatesPage 1
Powerpoint Templates
PHP
L.I. José Manuel Cazarez Alderete
Powerpoint TemplatesPage 2
Powerpoint TemplatesPage 2
PHP (acrónimo de PHP: Hypertext Preprocessor) es un lenguaje de código abierto muy popular especialmente adecuado para desarrollo web y que puede ser incrustado en HTML.
PHP permite crear scripts que corren del lado del servidor, es ampliamente utilizado debido a su sencillez y su libre costo.
Una de las ventajas principales de PHP es el gran soporte para distintos sistemas gestores de base de datos.
Powerpoint TemplatesPage 3
Powerpoint TemplatesPage 3
Historia
PHP tal y como se conoce hoy en día es en realidad el sucesor de un producto llamado PHP/FI.
Creado en 1994 por Rasmus Lerdorf, la primera encarnación de PHP era un conjunto simple de ficheros binarios Common Gateway Interface (CGI) escritos en el lenguaje de programación C.
Originalmente utilizado para rastrear visitas de su currículum online, llamó al conjunto de scripts "Personal Home Page Tools", más frecuentemente referenciado como "PHP Tools".
Powerpoint TemplatesPage 4
Powerpoint TemplatesPage 4
Historia
Con el paso del tiempo se quiso más funcionalidad, y Rasmus reescribió PHP Tools, produciendo una implementación más grande y rica.
Este nuevo modelo fue capaz de interaccionar con bases de datos, y mucho más, proporcionando un entorno de trabajo sobre cuyos usuarios podían desarrollar aplicaciones web dinámicas sencillas tales como libros de visitas.
Powerpoint TemplatesPage 5
Powerpoint TemplatesPage 5
Historia
En junio de 1995, Rasmus » publicó el código fuente de PHP Tools, lo que permitió a los desarrolladores usarlo como considerasen apropiado. Esto también permitió -y animó- a los usuarios a proporcionar soluciones a los errores del código, y generalmente a mejorarlo.
Powerpoint TemplatesPage 6
Powerpoint TemplatesPage 6
Versiones de PHP
VersiónFecha de
lanzamientoNotas
1.0 08-06-1995Llamada oficialmente "Personal Home Page Tools (PHP Tools)". Es la primera versión en usar el nombre "PHP".
2.0 01-11-1997Considerada por sus creadores la "herramienta más rápida y sencilla" para crear páginas web dinámicas.
3.0 06-06-1998 Zeev Suraski y Andi Gutmans reescribieron la base para esta versión.
4.0 22-05-2000 Se añadió un sistema de parsing de dos fases llamado motor Zend.
4.1 10-12-2001 Se introducen 'superglobales' ($_GET, $_POST, $_SESSION, etc.)
4.2 22-04-2002Se deshabilitan register_globals por defecto. Datos recibidos por la red no son insertados en el espacio de nombres global, cerrando posibles agujeros de seguridad en las aplicaciones.
4.3 27-12-2002 Se introduce CLI y CGI.
4.4 11-07-2005 Se añaden páginas man para phpize y php-config.
5.0 13-07-2004 Motor Zend II con un nuevo modelo de objetos.
5.1 24-11-2005Mejoras de rendimiento con la introducción de variables de compilador para el nuevo motor de PHP.
5.2 02-11-2006 Activida extensión de filtro por defecto. Soporte JSON nativo.
Powerpoint TemplatesPage 7
Powerpoint TemplatesPage 7
Versiones de PHP
VersiónFecha de
lanzamientoNotas
5.3 30-06-2009
Soporte para espacios de nombres, enlace estático en tiempo de ejecución, etiqueta de salto (goto limitada), Clausuras nativas, Soporte nativo para archivos PHP (phar), recolección de basura para referencias circulares, soporte mejorado para Windows, sqlite3, mysqlnd como reemplazo a libmysql como biblioteca para extensiones que funcionan con MySQL, fileinfo como reemplzado de mime_magic para mejor soporte MIME, extensión de Internacionalización, y etiqueta ereg obsoleta.
5.4 01-03-2012
Soporte para Trait y sintaxis abreviada de array. Elementos removidos: register_globals, safe_mode, allow_call_time_pass_reference, session_register(), session_unregister() y session_is_registered(). Servidor web incorporado. Varias mejoras a características existentes y al rendimiento, y requerimientos de memoria menores.
5.5 20-06-2013Nuevos generadores para bucles, empty() soporta expresiones. Se pierde el soporte para Windows XP y Windows Server 2003.
6.0 Sin fecha
El desarrollo de PHP 6 ha sido retrasado porque los desarrolladores decidieron que el enfoque actual para tratar cadenas Unicode no es correcto, y están considerando formas alternas para la siguiente versión.
Las mejoras planeadas para PHP 6 fueron añadidas en su lugar en PHP 5.3.0 (Soporte para espacios de nombre, enlace estático en tiempo de ejecución, funciones lambda, clausuras, goto) y 5.4.0 (traits, revinculación de clausura).
Powerpoint TemplatesPage 8
Powerpoint TemplatesPage 8
Introducción
¿Qué se necesita para utilizar PHP?
•Servidor WEB que soporte PHP (Apache).
Para el desarrollo se utilizará AppServ / XAMPP:• Apache• PHP• MySQL• PhpMyAdmin
Powerpoint TemplatesPage 9
Powerpoint TemplatesPage 9
Introducción
Primer script PHP
<html> <head> <title>Ejemplo PHP</title> </head> <body> <?php echo '<p>Hola Mundo</p>'; ?> </body></html>
Powerpoint TemplatesPage 10
Powerpoint TemplatesPage 10
Powerpoint TemplatesPage 11
Powerpoint TemplatesPage 11
Introducción
Powerpoint TemplatesPage 12
Powerpoint TemplatesPage 12
Referencia del Lenguaje
Cuando PHP interpreta un archivo, busca las etiquetas de apertura y fin de bloque, que dicen a PHP donde empezar y finalizar la interpretación del código. Este mecanismo permite a PHP ser incrustado en todo tipo de documentos, todo lo que esté fuera de las etiquetas de PHP será ignorado por el interpretador.
<p>Este texto va a ser ignorado.</p><?php echo 'Mientras que este texto va a ser interpretado.'; ?><p>Esto también será ignorado.</p>
Powerpoint TemplatesPage 13
Powerpoint TemplatesPage 13
Comentarios en PHP
PHP soporta diferentes tipos de comentarios.
Comentarios de una sola Línea// Esto es un comentario de una sola línea
Comentarios de mas de una línea/* Este es un comentario de mas de una línea.*/
Powerpoint TemplatesPage 14
Powerpoint TemplatesPage 14
Comentarios en PHP
<?php
// Esto es un comentario de una sola línea
/* Este es un comentario de mas de una línea.*/
// Este es otro comentario de una línea
?>
Powerpoint TemplatesPage 15
Powerpoint TemplatesPage 15
Variables y Tipos de Datos
En PHP las variables se representan con un signo de dólar ($) seguido por el nombre de la variable. El nombre de la variable es sensible a minúsculas y mayúsculas.
<?php
$anio = 2011;$pi = 3.1416;$nombre = ‘juan perez’;
?>
Powerpoint TemplatesPage 16
Powerpoint TemplatesPage 16
Variables y Tipos de Datos
PHP no requiere que indiquemos el tipo que va a contener una variable, sino que lo deduce del valor que asignemos a la variable.
Asimismo, se encarga de actualizar automáticamente el tipo de la variable cada vez que le asignamos un nuevo valor.
Por ello, para cambiar el tipo de una variable simplemente le asignamos un valor con un nuevo tipo.
Powerpoint TemplatesPage 17
Powerpoint TemplatesPage 17
Variables y Tipos de Datos
PHP reconoce los siguientes tipos de datos.
Tipos de datos escalares:•boolean•integer•float•string
Tipos de datos compuestos:•object•array
Powerpoint TemplatesPage 18
Powerpoint TemplatesPage 18
Constantes
Para crear una constante en PHP debemos utilizar la instrucción define.
Sintaxis:
define (“NombreConstante”, valor);
Ejemplo:
define (“pi”, 3.1416);
Powerpoint TemplatesPage 19
Powerpoint TemplatesPage 19
Constantes
PHP cuenta con algunas constantes definidas:
CONSTANTE UTILIZACIÓN__FILE__ Obtiene el PATH del archivo que esta en
ejecución.
__LINE__ Obtiene el numero de línea del archivo.
PHP_VERSION Obtiene la versión instalada de PHP
PHP_OS Obtiene el sistema operativo en el que se está ejecutando PHP.
Powerpoint TemplatesPage 20
Powerpoint TemplatesPage 20
Operadores Aritméticos
Operador Nombre Ejemplo
+Suma $a + $b
-Resta $a - $b
*Multiplicación $a * $b
/División $a / $b
%Módulo $a % $b
Powerpoint TemplatesPage 21
Powerpoint TemplatesPage 21
Operadores Relacionales
Operador Nombre Ejemplo
>Mayor que $a > $b
<Menor que $a < $b
>=Mayor o igual que $a >= $b
<=Menor o igual que $a <= $b
!=Diferente $a != $b
==Igual $a == $b
Powerpoint TemplatesPage 22
Powerpoint TemplatesPage 22
Operadores Lógicos
Operador Nombre Ejemplo
!Not ! $a
&&And (y) $a && $b
||Or (o) $a || $b
Powerpoint TemplatesPage 23
Powerpoint TemplatesPage 23
Operadores de Incremento y Decremento
Operador Nombre Ejemplo
++Incremento $a++
--Decremento $a--
++Incremento ++$a
Pre-Incremento
--Decremento --$a
Post-Incremento
Powerpoint TemplatesPage 24
Powerpoint TemplatesPage 24
Estructuras Condicionales
Estructura Condicional Simple
if( <condicion> ){ //instrucciones}
Ejemplo
<?php
$a = 15;$b = 10;
if( $a > $b ){ echo ”a es mayor que b”;
}
?>
Powerpoint TemplatesPage 25
Powerpoint TemplatesPage 25
Estructuras Condicionales
Estructura Condicional Doble
if( <condicion> ){ //instrucciones}else{ //otras instrucciones}
Ejemplo<?php
$a = 15;$b = 10;
if( $a > $b ){ echo ”a es mayor que b”;}else{ echo ”b es mayor que a”;}
?>
Powerpoint TemplatesPage 26
Powerpoint TemplatesPage 26
Estructuras Condicionales
Estructura Condicional Anidada
if( <condicion> ){ //instrucciones}elseif (<condicion2>) { //mas instrucciones}else{ //otras instrucciones}
Ejemplo<?php$a = 15;$b = 10;
if( $a > $b ){ echo ”a es mayor que b”;}elseif ( $b > $a ){ echo ”b es mayor que a”;}else{ echo ”a y b son iguales”;}?>
Powerpoint TemplatesPage 27
Powerpoint TemplatesPage 27
Estructuras Condicionales
Estructura Condicional Multiple<?php$i = 1;
switch ($i) { case 0: echo "i es igual a 0"; break; case 1: echo "i es igual a 1"; break; case 2: echo "i es igual a 2"; break; default: echo "i no es igual a 0, 1 ni 2";}
?>
Powerpoint TemplatesPage 28
Powerpoint TemplatesPage 28
Estructuras RepetitivasCiclo for
//ejemplo 1
for($i = 1; $i <= 10; $i++) { echo $i;}
//ejemplo 2
for ($i = 1; ; $i++) { if ($i > 10) { break; } echo $i;}
//ejemplo 3
$i = 1;for (; ; ) { if ($i > 10) { break; } echo $i; $i++;}
Powerpoint TemplatesPage 29
Powerpoint TemplatesPage 29
Estructuras RepetitivasCiclo while
//ejemplo 1
$i = 1;
while ($i <= 10) { echo $i++;}
//ejemplo 3
$i = 1;
while ($i <= 10): echo $i; $i++;endwhile;
Powerpoint TemplatesPage 30
Powerpoint TemplatesPage 30
Estructuras RepetitivasCiclo do - while
//ejemplo
$i = 1;
do { echo $i; $i++;} while ($i <= 10);
Powerpoint TemplatesPage 31
Powerpoint TemplatesPage 31
Arreglos
//Ejemplo 1
$materias[0] = “diseño web”;$materias[1] = “programacion”;$materias[2] = “base de datos”;
//ejemplo 2
$empleado[0] = “123”;$empleado[1] = “Juan Lopez”;$empleado[2] = “gerente”;$empleado[3] = 48;$empleado[4] = 25000;
//Ejemplo 1
$materias[] = “diseño web”;$materias[] = “programacion”;$materias[] = “base de datos”;
//ejemplo 2
$empleado[1] = “123”;$empleado[8] = “Juan Lopez”;$empleado[2] = “gerente”;$empleado[4] = 48;$empleado[6] = 25000;
Powerpoint TemplatesPage 32
Powerpoint TemplatesPage 32
Arreglos
//ejemplo 5
$empleado[“clave”] = “123”;$empleado[“nombre”] = “Juan Lopez”;$empleado[“puesto”] = “gerente”;$empleado[“edad”] = 48;$empleado[“sueldo”] = 25000;
//ejemplo 6
$empleado = array(“123”, “Juan Lopez”, “gerente”, 48, 25000);
//ejemplo 7
$empleado = array(“clave” => “123”, “nombre” => “Juan Lopez”, “puesto” => “gerente” , “edad” => 48, “sueldo” => 25000);
Powerpoint TemplatesPage 33
Powerpoint TemplatesPage 33
Arreglos - Recorrer
Existen varias alternativas para recorrer o iterar un arreglo:
// ejemplo 1
$paises = array("argentina", "mexico", "usa", "japon");
for($i=0; $i < count($paises); $i++){ echo “indice = $i <br/>"; echo “valor = $paises[$i] <br/>"; }
La función count regresa el número de elementos que existen en el arreglo.
Powerpoint TemplatesPage 34
Powerpoint TemplatesPage 34
Arreglos - Recorrer
//ejemplo 2
$paises = array("argentina", "mexico", "usa", "japon");
reset($paises);
do{
$clave = key($paises);$valor = current($paises);
echo "clave = $clave <br/>";echo "valor = $valor <br/>";
}while(next($paises));
Powerpoint TemplatesPage 35
Powerpoint TemplatesPage 35
Arreglos - Recorrer
La función reset coloca el puntero en la primer posición del arreglo.
La función key obtiene la clave o el índice de la posición actual del arreglo.
La función current obtiene el valor actual del arreglo.
La función next avanza a la siguiente posición del arreglo. En caso de llegar el final del arreglo esta función regresa false.
Para recorrer el arreglo de forma invertida debe reemplazar la
función reset por end y la función next por prev.
Powerpoint TemplatesPage 36
Powerpoint TemplatesPage 36
Arreglos - Recorrer
//ejemplo 3
$paises = array("argentina", "mexico", "usa", "japon");
while(list($clave,$valor) = each($paises)){
echo "clave = $clave <br/>";echo "valor = $valor <br/>";echo "--------------------<br/>";
}
La función each regresa dos valores, clave/valor actual del arreglo y avanza el cursor del arreglo.
La función list se utiliza para asignar una lista de variables.
Powerpoint TemplatesPage 37
Powerpoint TemplatesPage 37
Estructuras RepetitivasCiclo foreach
//ejemplo 3
$paises = array("argentina", "mexico", "usa", "japon");
foreach($paises as $valor){ echo $valor; echo “<br/>”;}
//ejemplo 4
$paises = array("argentina", "mexico", "usa", "japon");
foreach($paises as $indice => $valor){ echo “indice : $indice<br/>”; echo “valor : $valor <br/> ”;}
Powerpoint TemplatesPage 38
Powerpoint TemplatesPage 38
Funciones
Las funciones son un conjunto de instrucciones agrupadas en un nombre para ser utilizadas cuantas veces sea necesario en una aplicación o programa.
Una función en PHP se hace de la siguiente manera:
function <NombreFuncion>(<parametros>){ //instrucciones}
Powerpoint TemplatesPage 39
Powerpoint TemplatesPage 39
Funciones
Ejemplo:
function Sumar($num1, $num2){ return $num1 + $num2;}
Una función puede recibir cualquier cantidad de parámetros separados por coma.
La instrucción return se utiliza cuando la función va a regresar un valor.
Powerpoint TemplatesPage 40
Powerpoint TemplatesPage 40
Funciones
func_num_args. Devuelve el numero de parámetros enviados a la función.
func_get_args. Devuelve un array con los parámetros enviados a la función.
func_get_arg. Devuelve un elemento del array de parámetros enviados en base a un índice.
Powerpoint TemplatesPage 41
Powerpoint TemplatesPage 41
Funciones
Ejemplo 2:
function Sumar(){ $numeroParametros = func_num_args();
$parametros = func_get_args();$suma = 0;
for($i=0; $i < $numeroParametros; $i++){
$suma += $parametros[$i];}
return $suma;}
Powerpoint TemplatesPage 42
Powerpoint TemplatesPage 42
Funciones
Fechagetdate()date("m/d/y")date("r")
Cadenastrtoupperstrtolowerstrlenstrrevsubstr($string,$inicio,$fin)trim
ArregloscountsizeofresetendnextPrev
Funcionesfunc_num_argsfunc_get_argfunc_get_args
Powerpoint TemplatesPage 43
Powerpoint TemplatesPage 43
Funciones
Matematicasabssqrtminmaxcossinceilfloorpow
Powerpoint TemplatesPage 44
Powerpoint TemplatesPage 44
Incluir Archivos
Para reutilizar porciones de código entre varias paginas en PHP se tienen varias funciones:
includeinclude_oncerequirerequire_once
La diferencia entre include y require consiste en que con include si el archivo a insertar no existe, entonces manda una advertencia y sigue la ejecución del script, y con require manda un error fatal y detiene la ejecución del script.
Powerpoint TemplatesPage 45
Powerpoint TemplatesPage 45
Incluir Archivos
Para insertar una página dentro de un script en PHP es:
//ejemplo con include
include(‘menu.php’);include_once(‘menu.php’);
//ejemplo con require
require(‘menu.php’);require_once(‘menu.php’);
Powerpoint TemplatesPage 46
Powerpoint TemplatesPage 46
Incluir Archivos
Tanto include_once y require_once funcionan al igual que include y require, con la única diferencia que si el archivo a insertar ha sido insertado previamente en el script ya no será insertado de nuevo.
Powerpoint TemplatesPage 47
Powerpoint TemplatesPage 47
Manejo de Archivos
La manipulación de archivos es una practica común en cualquier sitio web. Por esto, PHP ofrece algunas funciones fundamentales para el tratamiento de archivos.
Las operaciones principales que se hacen con archivos son:
1.Abrir.2.Leer e Imprimir.3.Cerrar.
Powerpoint TemplatesPage 48
Powerpoint TemplatesPage 48
Manejo de Archivos
Para abrir un archivo en PHP se puede utilizar la siguiente función:
$archivo = fopen(“ruta_archivo”, “modo”);
Donde ruta_archivo es la dirección donde se encuentra el archivo que se quiere abrir. Y modo es la forma como se va abrir el archivo.
Powerpoint TemplatesPage 49
Powerpoint TemplatesPage 49
Manejo de Archivos
Los diferentes modos de apertura de un archivo son:
“r” – Sólo lectura.
“r+” – Lectura y escritura.
“w” – Solo escritura.
“w+” – Lectura y escritura. (Suprime el contenido anterior si se escribe. El archivo es creado si no existe.)
“a” - Sólo escritura. (El archivo es creado si no existe y el puntero se coloca al final).
“a+” -Lectura y escritura. (El archivo es creado si no existe y el puntero se coloca al final.)
Powerpoint TemplatesPage 50
Powerpoint TemplatesPage 50
Manejo de Archivos
Para leer un archivo se pueden utilizar las siguientes funciones:
fgets ($archivo, [$tamanio]);fread ($archivo, $numero_bytes);
Donde $archivo es la variable que contiene el manejador del archivo y $tamanio es el tamaño máximo de caracteres a leer (este parámetro es opcional en la función fgets).
La función fread se utiliza con archivos binarios.
Powerpoint TemplatesPage 51
Powerpoint TemplatesPage 51
Manejo de Archivos
Para escribir en un archivo se puede utilizar la siguiente función:
fwrite($archivo, $string, [$tamanio]);
Donde $archivo es la variable que contiene el manejador del archivo. $string es la cadena que se va a escribir el archivo y $tamanio es el tamaño máximo de caracteres a escribir (este parámetro es opcional).
Powerpoint TemplatesPage 52
Powerpoint TemplatesPage 52
Manejo de Archivos
Despues de utilizar un archivo se debe cerrar, para eso se puede utilizar la función:
fclose($archivo);
Donde $archivo es la variable que contiene el manejador del archivo.
Powerpoint TemplatesPage 53
Powerpoint TemplatesPage 53
Manejo de Archivos
Además, existen otras funciones adicionales para copiar, renombrar y eliminar archivos.
Copiar Archivo. copy($origen, $destino);
Renombrar Archivo.rename($nombre_anterior,$nuevo_nombre);
Eliminar Archivo.unlink($archivo);
Powerpoint TemplatesPage 54
Powerpoint TemplatesPage 54
Manejo de Directorios
PHP también dispone de algunas funciones para el manejo de directorios:
Abrir un directorio:
$directorio = opendir(“ruta_archivo_directorio”);
Leer un directorio:
$archivo = readdir($directorio);
Cerrar un directorio:
closedir($directorio);
Powerpoint TemplatesPage 55
Powerpoint TemplatesPage 55
Programación Orientadas aObjetos
<?phpclass Rectangulo{
public $base;public $altura;
function CalcularArea(){
return $this->base * $this->altura;}
function CalcularPerimetro(){
return (2 * $this->base) + (2 * $this->altura );}
}?>
Powerpoint TemplatesPage 56
Powerpoint TemplatesPage 56
Programación Orientadas aObjetos
<?php
include (“rectangulo.php");
$rect = new Rectangulo();
$rect->altura = 10;$rect->base = 5;
echo "Area : " . $rect->CalcularArea() ."<br/>";echo "Perimetro: " . $rect->CalcularPerimetro();
?>
Powerpoint TemplatesPage 57
Powerpoint TemplatesPage 57
Programación Orientadas aObjetos
<?phpclass Rectangulo{
private $base, $altura;
function __construct($b, $a){
$this->base = $b;$this->altura = $a;
}
function CalcularArea(){
return $this->base * $this->altura;}
function CalcularPerimetro(){
return (2 * $this->base) + (2 * $this->altura );}
}?>
Powerpoint TemplatesPage 58
Powerpoint TemplatesPage 58
Programación Orientadas aObjetos
<?phpinclude("rectangulo.php");
class Cuadrado extends Rectangulo{
function __construct($a){
parent::__construct($a,$a);}
function CalcularArea(){
return $this->base * $this->altura;}
function CalcularPerimetro(){
return (2 * $this->base) + (2 * $this->altura );}
}?>
Powerpoint TemplatesPage 59
Powerpoint TemplatesPage 59
PHP y Formularios HTML
Otra de las características más potentes de PHP es la forma en que gestiona formularios HTML. El concepto básico que es importante entender es que cualquier elemento de un formulario estará disponible automáticamente en sus scripts de PHP.
Ejemplo #1 Un formulario HTML sencillo
<form action="accion.php" method="post"> <p>Su nombre: <input type="text" name="nombre" /></p> <p>Su edad: <input type="text" name="edad" /></p> <p><input type="submit" /></p></form>
Powerpoint TemplatesPage 60
Powerpoint TemplatesPage 60
PHP y Formularios HTML
No hay nada especial en este formulario. Es solamente un formulario HTML sin ninguna clase de etiqueta especial. Cuando el usuario rellena este formulario y oprime el botón de envío, se llama a la página accion.php. En este archivo de podría escribir algo así:
Ejemplo - Mostrar información de nuestro formulario
Hola <?php echo $_POST['nombre']; ?>.Usted tiene <?php echo (int)$_POST['edad']; ?> años.
Un ejemplo del resultado de este script podría ser:Hola José. Usted tiene 22 años.
Powerpoint TemplatesPage 61
Powerpoint TemplatesPage 61
PHP y Formularios HTML
Ejemplo #2 (método post):
uno.php<html><body><form action="dos.php" method="post"> edad: <input type="text" name="edad"> <input type="submit" value="aceptar"></form></body></html>
dos.php<html><body><?php $edad = $_POST['edad']; echo "la edad es: $edad ";?></body></html>
Powerpoint TemplatesPage 62
Powerpoint TemplatesPage 62
PHP y Formularios HTML
Powerpoint TemplatesPage 63
Powerpoint TemplatesPage 63
PHP y Formularios HTML
Ejemplo #2 (método get):
uno.php<html><body><form action="dos.php" method="get"> edad: <input type="text" name="edad"> <input type="submit" value="aceptar"></form></body></html>
dos.php<html><body><?php $edad = $_GET['edad']; echo "la edad es: $edad ";?></body></html>
Powerpoint TemplatesPage 64
Powerpoint TemplatesPage 64
PHP y Formularios HTML
Powerpoint TemplatesPage 65
Powerpoint TemplatesPage 65
PHP y Formularios HTML
Acceso a los diferentes tipos de elementos de entrada de formulario:
•Elementos de tipo INPUT• TEXT• RADIO• CHECKBOX• BUTTON• FILE• HIDDEN• PASSWORD• SUBMIT
•Elemento SELECT• Simple / múltiple
•Elemento TEXTAREA
Powerpoint TemplatesPage 66
Powerpoint TemplatesPage 66
PHP y Formularios HTML
TEXT
uno.php<html><body><form action="dos.php" method=“post"> Introduzca la cadena a buscar: <input type="text" name="cadena" /> <input type="submit" value="aceptar“/></form></body></html>
dos.php<html><body><?php $cadena = $_POST['cadena']; echo $cadena;?></body></html>
Powerpoint TemplatesPage 67
Powerpoint TemplatesPage 67
PHP y Formularios HTMLRADIO
uno.php<html><body><form action="dos.php" method="post">Sexo:<input type="radio" name="sexo" value="m" checked>mujer<input type="radio" name="sexo" value="h">hombre<input type="submit" value="aceptar"/></form></body></html>
dos.php<html><body><?php $sexo = $_POST['sexo']; echo $sexo;?></body></html>
Powerpoint TemplatesPage 68
Powerpoint TemplatesPage 68
PHP y Formularios HTMLCHECKBOX
uno.php<html><body><form action="dos.php" method="post"><input type="checkbox" name="extras[]" value="garaje" checked>garaje<input type="checkbox" name="extras[]" value="piscina">piscina<input type="checkbox" name="extras[]" value="jardin">jardín<input type="submit" value="aceptar"/></form></body></html>
dos.php<html><body><?php $extras = $_POST['extras']; foreach ($extras as $extra) echo "$extra<br/>";?></body></html>
Powerpoint TemplatesPage 69
Powerpoint TemplatesPage 69
PHP y Formularios HTML
Powerpoint TemplatesPage 70
Powerpoint TemplatesPage 70
PHP y Formularios HTML
SUBMIT
<input type="button" name="actualizar" value="actualizar datos">
<?php $actualizar = $_POST['actualizar']; if ($actualizar) echo "Se han actualizado los datos" ;?>
Powerpoint TemplatesPage 71
Powerpoint TemplatesPage 71
PHP y Formularios HTML
FILE
<form action="procesa.php" method="post" enctype="multipart/form-data"> <input type="file" name="fichero"></form>
Powerpoint TemplatesPage 72
Powerpoint TemplatesPage 72
PHP y Formularios HTML
HIDDEN
<input type="hidden" name="username" value="usuario"/>
<?php $username = $_POST['username']; echo $username;?>
Powerpoint TemplatesPage 73
Powerpoint TemplatesPage 73
PHP y Formularios HTML
PASSWORD
Contraseña: <input type="password" name="clave">
<?php $clave = $_POST[‘clave’]; echo $clave;?>
Powerpoint TemplatesPage 74
Powerpoint TemplatesPage 74
PHP y Formularios HTML
SELECT simple
Color:<select name="color"> <option value="rojo" selected>rojo <option value="verde">verde <option value="azul">azul</select>
<?php $color = $_POST[‘color’]; echo $color;?>
Powerpoint TemplatesPage 75
Powerpoint TemplatesPage 75
PHP y Formularios HTML
SELECT múltiple
Idiomas:<select multiple size="3" name="idiomas[]"> <option value="ingles" selected>inglés <option value="frances">francés <option value="aleman">alemán <option value="holandes">holandés</select>
<?php $idiomas = $_POST[‘idiomas’]; foreach ($idiomas as $idioma) echo “$idioma<br>”;?>
Powerpoint TemplatesPage 76
Powerpoint TemplatesPage 76
PHP y Formularios HTML
TEXTAREA
Comentario:<textarea cols="50" rows="4" name="comentario">este libro me parece ...</textarea>
<?php $comentario = $_POST[‘comentario’]; echo $comentario;?>
Powerpoint TemplatesPage 77
Powerpoint TemplatesPage 77
Cookies
Las cookies son pequeños archivos de texto que son descargados automáticamente (si está permitido por las reglas de seguridad) al navegar en una página web específica.
En una cookie se almacena cierta información sobre el visitante que la página considera importante recordar. Una cookie se usa, por ejemplo, para que cada vez que accedamos a una página esté adaptada a nuestro gusto (en un idioma determinado, con ciertos colores, etc.). También sirve para la persistencia de sesiones.
Powerpoint TemplatesPage 78
Powerpoint TemplatesPage 78
Cookies
Para crear una cookie en php se utiliza la función setcookie.
Ejemplo:
setcookie(“NombreCookie", “Valor", Expiracion);
Donde:
•NombreCookie: es el nombre que tendrá la cookie.•Valor: es el valor que tendrá la cookie.•Expiración: caducidad de la cookie.
Powerpoint TemplatesPage 79
Powerpoint TemplatesPage 79
Cookies
Por otra parte, para recibir las cookies que el navegador del usuario pueda tener creadas en el sistema se utiliza el array asociativo $_COOKIE.
En este array están todas las cookies que tiene disponible la página PHP en el dominio y el directorio donde está colocado.
Por medio del nombre de la cookie accedemos a su valor:
$_COOKIE[“Usuario"]; $_COOKIE[“Password"];
Powerpoint TemplatesPage 80
Powerpoint TemplatesPage 80
Sesiones
Las sesiones, en aplicaciones web realizadas con PHP y en el desarrollo de páginas web en general, nos sirven para almacenar información que se memorizará durante toda la visita de un usuario a una página web.
Es decir, un usuario puede ver varias páginas durante su paso por un sitio web y con sesiones podemos almacenar variables que podremos acceder en cualquiera de esas páginas.
Powerpoint TemplatesPage 81
Powerpoint TemplatesPage 81
Sesiones
Las sesiones son una manera de guardar información, específica para cada usuario, durante toda su visita.
Cada usuario que entra en un sitio abre una sesión, que es independiente de la sesión de otros usuarios.
En la sesión de un usuario podemos almacenar todo tipo de datos, como su nombre, correo, edad, etc.
Powerpoint TemplatesPage 82
Powerpoint TemplatesPage 82
Sesiones
Antes de utilizar variables de sesión en PHP se debe utilizar la función: session_start()
Para guardar un valor en una variable de sesión se debe utilizar:
$_SESSION[“NombreVariable”] = valor;
Powerpoint TemplatesPage 83
Powerpoint TemplatesPage 83
Sesiones
Para obtener un valor en una variable de sesión se debe utilizar:
$valor = $_SESSION[“NombreVariable”];
Las variables de sesión admiten cualquier valor, inclusive arreglos u objetos.
Powerpoint TemplatesPage 84
Powerpoint TemplatesPage 84
Sesiones
Para eliminar una variable de sesión en especifico se debe utilizar:
unset($_SESSION[“NombreVariable”]);
Para eliminar todas las variables de sesion se debe utilizar:
session_destroy();
Powerpoint TemplatesPage 85
Powerpoint TemplatesPage 85
PHP - MySQL
Acceso a bases de datos de MySQL desde PHP
Powerpoint TemplatesPage 86
Powerpoint TemplatesPage 86
PHP - MySQL
Las bases de datos permiten almacenar de una forma estructurada y eficiente toda la información de un sitio web.
Ventajas:
• Proporcionar información actualizada.• Facilitar la realización de búsquedas.• Disminuir los costes de mantenimiento.
Powerpoint TemplatesPage 87
Powerpoint TemplatesPage 87
PHP - MySQL
Funciones básicas para interactuar con MySQL desde PHP:
//Conectar a un servidor de MySQL$conexion = mysql_connect(“localhost”,”usuario”,”password”);
//Seleccionar una base de datosmysql_select_db(“bd”);
//Ejecutar una consulta SQL$resultado = mysql_query($consulta, $conexion);
Powerpoint TemplatesPage 88
Powerpoint TemplatesPage 88
PHP - MySQL
//Obtener el número de registros devueltos por una consulta$registros = mysql_num_rows($resultado);
//Obtener una fila o registro de una consulta$renglon = mysql_fetch_array($resultado, MYSQL_ASSOC);
//Cerrar una conexión.mysql_close();
Powerpoint TemplatesPage 89
Powerpoint TemplatesPage 89
PHP - MySQL
Obtiene el número de filas afectadas en la anterior operación de MySQL.$registros = mysql_affected_rows();
Devuelve el texto de el mensaje de error de la anterior operación MySQL$error = mysql_error($conexion);
Libera la memoria del resultadomysql_free_result($resultado);
Powerpoint TemplatesPage 90
Powerpoint TemplatesPage 90
PHP - MySQL
mysql_fetch_assoc — Recupera una fila de resultado como un array asociativo
mysql_connect("hostname", “usuario", "password");mysql_select_db(“nombre_bd");
$resultado = mysql_query("select * from clientes");
while ($registro = mysql_fetch_object($resultado)) { echo $registro->clave; echo $registro->nombre;}
mysql_free_result($resultado);
Powerpoint TemplatesPage 91
Powerpoint TemplatesPage 91
PHP - MySQL
Estilo Orientado a Objetos
//Conectar a un servidor de MySQL$db = new mysqli(“localhost”,”usuario”,”password”);
//Seleccionar una base de datos$db->select_db(“bd”);
//Ejecutar una consulta SQL$resultado = $db->query($consulta);
Powerpoint TemplatesPage 92
Powerpoint TemplatesPage 92
PHP - MySQL
//Obtener el número de registros devueltos por una consulta$registros = $db->num_rows;
//Obtener una fila o registro de una consulta1) $renglon = $resultado->fetch_array(MYSQLI_NUM);2) $renglon = $resultado-
>fetch_array(MYSQLI_ASSOC);3) $renglon = $resultado->fetch_assoc();
//Liberar recursos$resultado->free();
//Cerrar una conexión.$db->close();
Powerpoint TemplatesPage 93
Powerpoint TemplatesPage 93
WEB SERVICES
El término Web Services describe una forma estandarizada de integrar aplicaciones WEB mediante el uso de XML, SOAP, WSDL y UDDI XML, SOAP, WSDL y UDDI sobre los protocolos de Internet.
XML es usado para describir los datos, SOAP se ocupa para la transferencia de los datos, WSDL se emplea para describir los servicios disponibles y UDDI se ocupa para conocer cuales son los servicios disponibles.
Powerpoint TemplatesPage 94
Powerpoint TemplatesPage 94
WEB SERVICES
Los Web Services permiten a las organizaciones intercambiar datos sin necesidad de conocer los detalles de sus respectivos Sistemas de Información.
A diferencia de los modelos Cliente/Servidor, tales como un servidor de paginas Web, los Web Services no proveen al usuario una interfaz gráfica (GUI).
Powerpoint TemplatesPage 95
Powerpoint TemplatesPage 95
WEB SERVICES
En vez de ello, los Web Services comparten la lógica del negocio, los datos y los procesos, por medio de una interfaz de programas a través de la red. Es decir conectan programas, por tanto son programas que no interactúan directamente con los usuarios.
Powerpoint TemplatesPage 96
Powerpoint TemplatesPage 96
WEB SERVICES
Los Web Services permiten a distintas aplicaciones, de diferentes orígenes, comunicarse entre ellos sin necesidad de escribir programas costosos, esto porque la comunicación se hace con XML.
Los Web Services no están ligados a ningún ningún Sistema Operativo o Lenguaje de Sistema Operativo o Lenguaje de Programación.Programación.
Powerpoint TemplatesPage 97
Powerpoint TemplatesPage 97
WEB SERVICES
Los Web Services permiten a distintas aplicaciones, de diferentes orígenes, comunicarse entre ellos sin necesidad de escribir programas costosos, esto porque la comunicación se hace con XML.
Los Web Services no están ligados a ningún ningún Sistema Operativo o Lenguaje de Sistema Operativo o Lenguaje de Programación.Programación.
Powerpoint TemplatesPage 98
Powerpoint TemplatesPage 98
WEB SERVICES
Por ejemplo, un programa escrito en ASP.NET puede conversar con otro escrito en PHP; Aplicaciones Windows puede conversar con aplicaciones Unix.
Por otra parte los Web Services no necesitan usar browsers (Explorer) ni el lenguaje de especificación HTML.
Powerpoint TemplatesPage 99
Powerpoint TemplatesPage 99
WEB SERVICES
Los Web Services están construidos con varias tecnologías que trabajan conjuntamente con los estándares que están emergiendo para asegurar la seguridad y operatibilidad, de modo de hacer realidad que el uso combinado de varios Web Services, independiente de la o las empresas que los proveen, este garantizado.
Powerpoint TemplatesPage 100
Powerpoint TemplatesPage 100
WEB SERVICES
XMLXML
Abreviación de Extensible Markup Language. El XML es una especificación desarrollada por W3C. Permite a los desarrolladores crear sus propios tags, que les permiten habilitar definiciones, transmiciones, validaciones, e interpretación de los datos entre aplicaciones y entre organizaciones.
Powerpoint TemplatesPage 101
Powerpoint TemplatesPage 101
WEB SERVICES
SOAPSOAP
Abreviación de Simple Object Access Protocol , es un protocolo de mensajería construido en XML que se usa para codificar información de los requerimientos de los Web Services y para responder los mensajes antes de enviarlos por la red. Los mensajes SOAP son independientes de los sistemas operativos y pueden ser transportados por los protocolos que funcionan en internet, como : SMTP, MIME y HTTP.
Powerpoint TemplatesPage 102
Powerpoint TemplatesPage 102
WEB SERVICES
WSDLWSDL
Abreviación de Web Services Description Language, es un protocolo basado en XML que describe los accesos al Web Service. Podríamos decir que es el manual de operación del web service, porque nos indica cuales son las interfaces que provee el Servicio web y los tipos de datos necesarios para la utilización del mismo.
Powerpoint TemplatesPage 103
Powerpoint TemplatesPage 103
WEB SERVICES
UDDIUDDI
Es un modelo de directorios para Web Services. Es una especificación para mantener directorios estandarizados de información acerca de los Web Services, sus capacidades, ubicación, y requerimientos en un formato reconocido universalmente. UDDI utiliza WSDL para describir las interfaces de los Web Services.
Es un lugar en el cual podemos buscar cuales son los Servicios web disponibles, una especie de directorio en el cual podemos encontrar los Web Services publicados y publicar los Web Services que desarrollemos.