Especialista Web J9 Php

1,839 views

Published on

Jornada sobre PHP

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

No Downloads
Views
Total views
1,839
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
174
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Especialista Web J9 Php

  1. 1. Especialista en desarrollo de aplicaciones web JORNADA 9 ramos valcárcel, david [email_address]
  2. 2. PHP <ul><li>PHP Hipertext Preprocessor </li></ul><ul><ul><li>Inicialmente en 1994: Personal Home Page </li></ul></ul><ul><li>Lenguaje Open Source </li></ul><ul><li>Basado en C y C++ </li></ul><ul><li>Multiplataforma (GNU/Linux, Windows, Mac)  Independiente del Sistema Operativo  Portable </li></ul><ul><li>Muy bien documentado http://www.php.net/ </li></ul>
  3. 3. PHP <ul><li>Usado en mas de 20 millones de dominios </li></ul>
  4. 4. PHP <ul><li>Es un lenguaje de scripts que se ejecuta del lado del servidor </li></ul><ul><ul><li>Los scripts PHP están incrustados en los documentos html </li></ul></ul><ul><ul><li>El servidor los interpreta (procesa) y ejecuta antes de enviar las páginas al cliente </li></ul></ul><ul><ul><li>El cliente no ve el código PHP, sólo el código que produce </li></ul></ul><ul><li>Estructura similar a ASP, JSP, CGI… </li></ul><ul><li>Muy estandarizado en el uso con Apache y MySQL </li></ul>
  5. 5. PHP
  6. 6. PHP <ul><ul><li>Primer ejemplo con php </li></ul></ul><ul><ul><li><html> </li></ul></ul><ul><ul><li><head> </li></ul></ul><ul><ul><li><title>PHP – Hello World</title> </li></ul></ul><ul><ul><li></head> </li></ul></ul><ul><ul><li><body> </li></ul></ul><ul><ul><li> <?php </li></ul></ul><ul><ul><li>echo &quot;Hello World!&quot;; </li></ul></ul><ul><ul><li>?> </li></ul></ul><ul><ul><li></body> </li></ul></ul><ul><ul><li></html> </li></ul></ul>
  7. 7. PHP <ul><li>Los script php se colocan entre </li></ul><ul><ul><li><?php //apertura </li></ul></ul><ul><ul><li>?> //cierre </li></ul></ul><ul><li>La mayoría de las instrucciones finalizan con “;” </li></ul><ul><li>Sentencia básica </li></ul><ul><ul><li>echo “texto a mostrar”; </li></ul></ul><ul><li>Comentarios con </li></ul><ul><ul><li>// Una sola línea </li></ul></ul><ul><ul><li>/* Varias líneas */ </li></ul></ul>
  8. 8. PHP <ul><li>Las variables se identifican con “$” </li></ul><ul><li>Los nombres de las variables no pueden comenzar con números ni con caracteres especiales </li></ul><ul><ul><li>//correcto //incorrecto </li></ul></ul><ul><ul><li>$mi_variable $_mivariable </li></ul></ul><ul><ul><li>$2variable </li></ul></ul><ul><li>La variable toma el tipo de dato del valor que se le asigne </li></ul><ul><li>Tipos de datos: int, float, double, string, array, object </li></ul>
  9. 9. PHP <ul><li>Ejemplo </li></ul><ul><li><?php </li></ul><ul><li>$un_bool = TRUE; // un valor booleano </li></ul><ul><li>$un_str = &quot;foo&quot;; // una cadena </li></ul><ul><li>$un_int = 12; // un entero </li></ul><ul><li>echo gettype($un_bool); // imprime: boolean </li></ul><ul><li>// Si este valor es un entero, incrementarlo en cuatro </li></ul><ul><li>if (is_int($un_int)) $un_int += 4; </li></ul><ul><li>?> </li></ul>
  10. 10. PHP <ul><li>Es posible concatenar variables (strings) con el operador “.” </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>$mensaje1 = 'Hola'; </li></ul></ul><ul><ul><li>$mensaje2 = 'mundo!'; </li></ul></ul><ul><ul><li>echo $mensaje1.' '.$mensaje2; </li></ul></ul><ul><ul><li>?> </li></ul></ul><ul><li>Con la función “unset()” podemos quitar el valor de una variable </li></ul><ul><ul><li>$var = &quot;pepe&quot;; </li></ul></ul><ul><ul><li>unset($var); // Ahora no tiene valor (NULL) </li></ul></ul><ul><li>La función “isset()” nos indica si una variable está inicializada </li></ul><ul><ul><li>if (isset($var)){ </li></ul></ul><ul><ul><li>echo 'Tiene valor'; </li></ul></ul><ul><ul><li>} </li></ul></ul>
  11. 11. PHP <ul><li>Condicionales: IF </li></ul><ul><li>if (<condición>) {código si se cumple la condición} else {código si no se cumple la condición} </li></ul><ul><li>Ejemplo </li></ul><ul><ul><li><?php $i = 6; if ($i < 10) </li></ul></ul><ul><ul><li>{ echo &quot;menor de 10&quot;; </li></ul></ul><ul><ul><li>}else { echo &quot;mayor de 10&quot;; } </li></ul></ul><ul><ul><li>?> </li></ul></ul>
  12. 12. PHP <ul><li><HTML> <HEAD> <TITLE>Detector de Lengua</TITLE> </HEAD> <BODY> <? //definimos variables $espanol=&quot;Hola&quot;; $ingles=&quot;Hello&quot;; //Leemos del navegador su lengua oficial $idioma=substr($HTTP_ACCEPT_LANGUAGE,0,2); //Formulamos las posibilidades que se pueden dar if ($idioma == &quot;es“) { </li></ul><ul><li>echo &quot;$espanol&quot;; </li></ul><ul><li>} else echo &quot;$ingles“; ?> </li></ul><ul><li></BODY> </li></ul><ul><li></HTML> </li></ul>
  13. 13. PHP <ul><li>Condicionales: SWITCH </li></ul><ul><li> switch (<expresión>) { case <valor 1>: //código para valor 1 break; case <valor 2>: //código para valor 2 break; ... </li></ul><ul><li>case <valor n>: //código para valor n break; </li></ul><ul><li>default: // código por defecto break; } </li></ul>
  14. 14. PHP <ul><li>Ejemplo </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>$variable=2; </li></ul></ul><ul><ul><li>switch($variable) { </li></ul></ul><ul><ul><li>case 1: echo '$Variable es igual a 1.'; </li></ul></ul><ul><ul><li>break; </li></ul></ul><ul><ul><li>case 2: echo '$Variable es igual a 2.'; </li></ul></ul><ul><ul><li>break; </li></ul></ul><ul><ul><li>case 3: echo '$Variable es igual a 3.'; </li></ul></ul><ul><ul><li>break; </li></ul></ul><ul><ul><li>default: echo '$Variable no igual ' . 'a 1, 2 o 3.'; } </li></ul></ul><ul><ul><li>?> </li></ul></ul>
  15. 15. PHP <ul><li>Bucles: While </li></ul><ul><ul><li>Se ejecuta al código mientras se cumpla una condición </li></ul></ul><ul><ul><ul><li>while (<condicion>) { </li></ul></ul></ul><ul><ul><ul><ul><li>//Código a ejecutar </li></ul></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><ul><li>$a = 1; </li></ul></ul></ul><ul><ul><ul><li>while ( $a < 10) { </li></ul></ul></ul><ul><ul><ul><li>echo &quot;<p>El número actual es $a</p>&quot;; </li></ul></ul></ul><ul><ul><ul><li>$a++; </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul>
  16. 16. PHP <ul><li>Bucles: Do While </li></ul><ul><ul><li>Se ejecuta al código mientras se cumpla una condición </li></ul></ul><ul><ul><li>Al menos se ejecuta una vez </li></ul></ul><ul><ul><ul><li>do { </li></ul></ul></ul><ul><ul><ul><li>//Código a ejecutar </li></ul></ul></ul><ul><ul><ul><li>} while (<condicion>) </li></ul></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><ul><li>$a = 0; </li></ul></ul></ul><ul><ul><ul><li>do </li></ul></ul></ul><ul><ul><ul><li>{ </li></ul></ul></ul><ul><ul><ul><li>$a++; </li></ul></ul></ul><ul><ul><ul><li>echo ('<p>El número es '.$a.'</p>'); </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><ul><li>while ( $a < 10); </li></ul></ul></ul>
  17. 17. PHP <ul><li>Bucles: For </li></ul><ul><ul><li>Se ejecuta al código mientras se cumpla una condición </li></ul></ul><ul><ul><ul><li>for (inicialización; condición; actualización) { //código </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><ul><li>for ($i=1;$i<=100;$i++) { echo “$i <br>”; } </li></ul></ul></ul>
  18. 18. PHP <ul><li>Bucles: Foreach </li></ul><ul><ul><li>Se ejecuta un determinado código por cada uno de los elementos de una colección </li></ul></ul><ul><ul><li>Por ejemplo, si tenemos un array con n elementos: </li></ul></ul><ul><ul><li><? $vector = array(    &quot;uno&quot; => 1,    &quot;dos&quot; => 2,    &quot;tres&quot; => 3,    &quot;diecisiete&quot; => 17 ); foreach($vector as $indice => $valor) {    echo &quot;$vector[$indice] => $valor.n&quot;; } ?>  </li></ul></ul>
  19. 19. PHP <ul><li>Funciones importantes </li></ul><ul><ul><li>include (“archivo”) </li></ul></ul><ul><ul><ul><li>Llama al archivo para incrustar el código en la página. Puede ejecutarse o no al estar dentro de un condicional </li></ul></ul></ul><ul><ul><li>require(“archivo”) </li></ul></ul><ul><ul><ul><li>Llama al archivo para incrustar el código en la página. Este código se ejecuta siempre </li></ul></ul></ul><ul><ul><ul><li>A partir de la versión PHP 4.0.2 y posteriores esto cambia y ambas construcciones se comportan exactamente de la misma manera, con la única diferencia: </li></ul></ul></ul><ul><ul><ul><ul><li>include solo da una advertencia, y sigue ejecutando el código </li></ul></ul></ul></ul><ul><ul><ul><ul><li>require produce un error y interrumpe la ejecución. </li></ul></ul></ul></ul><ul><ul><li>header(“Location: paginaweb”) </li></ul></ul><ul><ul><ul><li>Redirecciona dinámicamente las página web </li></ul></ul></ul><ul><ul><ul><li>Se utiliza al comienzo de un fichero HTML </li></ul></ul></ul><ul><ul><li>exit </li></ul></ul><ul><ul><ul><li>Finaliza la ejecución del código </li></ul></ul></ul>
  20. 20. PHP <ul><li>Ejemplo include </li></ul><ul><ul><li>vars.php </li></ul></ul><ul><ul><ul><li><?php </li></ul></ul></ul><ul><ul><ul><li>$color = 'verde'; </li></ul></ul></ul><ul><ul><ul><li>$fruta = 'manzana'; </li></ul></ul></ul><ul><ul><ul><li>?> </li></ul></ul></ul><ul><ul><li>test.php </li></ul></ul><ul><ul><ul><li><?php </li></ul></ul></ul><ul><ul><ul><li>echo &quot;Una $fruta $color&quot;; // Una </li></ul></ul></ul><ul><ul><ul><li>include 'vars.php'; </li></ul></ul></ul><ul><ul><ul><li>echo &quot;Una $fruta $color&quot;; // Una manzana verde </li></ul></ul></ul><ul><ul><ul><li>?> </li></ul></ul></ul>
  21. 21. PHP <ul><li>Matrices/Arrays </li></ul><ul><ul><li>Es un tipo de dato, que contiene un conjunto de valores referenciados con un índice. </li></ul></ul><ul><ul><li>$sentido[1]=&quot;ver&quot;; $sentido[2]=&quot;tocar&quot;; $sentido[3]=&quot;oir&quot;; $sentido[4]=&quot;gustar&quot;; $sentido[5]=&quot;oler&quot;; </li></ul></ul><ul><ul><li>Acceso a una posición </li></ul></ul><ul><ul><li>echo ($sentido[1]); //devuelve “ver” </li></ul></ul><ul><ul><li>Creación de una matriz </li></ul></ul><ul><ul><li>$sentidos= array(‘ver‘,‘tocar‘,‘oír’); </li></ul></ul><ul><ul><li>$sentidos= array(1=>‘ver‘,2=>‘tocar‘,3=>‘oír‘); </li></ul></ul>
  22. 22. PHP <ul><li>Matrices/Arrays </li></ul><ul><ul><li>Podemos crear elementos de una matriz sobre la marcha: </li></ul></ul><ul><ul><li>$matriz[7] = &quot;Texto de la posición 7&quot;; </li></ul></ul><ul><ul><li>// si no especificamos un índice, se inserta en la siguiente posición </li></ul></ul><ul><ul><li>$matriz[] = &quot;Esto iría en la posición 8&quot;; </li></ul></ul><ul><ul><li>Podemos eliminar elementos, o la matriz entera con &quot;unset()“ </li></ul></ul><ul><ul><li>$matriz = array(3 => 'Oso', 5 => 'Lagarto'); </li></ul></ul><ul><ul><li>unset($matriz[3]); // No hay nada en la posición 3 </li></ul></ul><ul><ul><li>unset($matriz); // No hay nada en la matriz </li></ul></ul>
  23. 23. PHP <ul><li>Funciones </li></ul><ul><ul><li>function <nombre_función> ($param1, $param2, ...) </li></ul></ul><ul><ul><li>{ </li></ul></ul><ul><ul><li>//código función </li></ul></ul><ul><ul><li>return <resultado>; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>Ejemplos </li></ul></ul><ul><ul><ul><li>function negrita($texto) { </li></ul></ul></ul><ul><ul><ul><li>return '<b>'.$texto.'</b>'; </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><ul><li>echo 'Quiero '.negrita(‘destacar').' lo '.negrita('importante'); </li></ul></ul></ul><ul><ul><ul><li>function sumar($num1,$num2){   $ suma=$ num1 +$num2 echo $num1.&quot;+&quot;.$num2.&quot;=&quot;.$suma; } </li></ul></ul></ul><ul><ul><ul><li>sumar(5,6) </li></ul></ul></ul>
  24. 24. PHP <ul><li>Existen muchas bibliotecas de funciones en PHP </li></ul><ul><li>Algunos ejemplos: </li></ul><ul><ul><li>Funciones de manipulación de cadenas </li></ul></ul><ul><ul><li>Funciones de fecha y hora </li></ul></ul><ul><ul><li>Funciones de arrays </li></ul></ul><ul><ul><li>Funciones de ficheros </li></ul></ul><ul><ul><li>Funciones matemáticas </li></ul></ul><ul><ul><li>Funciones de bases de datos </li></ul></ul><ul><ul><li>Funciones de red </li></ul></ul><ul><li>Algunas bibliotecas requieren la instalación de componentes adicionales </li></ul><ul><li>http://es2.php.net/manual/es/ </li></ul>
  25. 25. PHP <ul><li>Manejo de cadenas </li></ul><ul><ul><li>chop(cadena): Devuelve la cadena de caracteres con los caracteres de blanco y nueva línea eliminados </li></ul></ul><ul><ul><li>trim(cadena): Elimina los blancos que aparecen a izquierda y derecha de la cadena de caracteres </li></ul></ul><ul><ul><li>str_repeat(caracter,numero_veces): Repite un caracter el numero de veces indicado </li></ul></ul><ul><ul><li>strtolower(cadena): Pasa toda la cadena a letras minúsculas </li></ul></ul><ul><ul><li>strtoupper(cadena): Pasa toda la cadena a letras mayúsculas </li></ul></ul><ul><ul><li>ucfirst(cadena): Pasa a mayúscula el primer caracter de una cadena </li></ul></ul><ul><ul><li>str_replace(subcadena1,subcadena2,cadena): Sustituye una palabra por otra dentro de una cadena </li></ul></ul><ul><ul><li>strtr(cadena,originales,traducidos): Traduce ciertos caracteres .Ejemplo: $persona=strt($persona,&quot;áéíóú&quot;,&quot;a,e,i,o,u&quot;); de esta forma cambiaría todas las vocales con acento por vocales sin acento. </li></ul></ul><ul><ul><li>substr_replace(cadena,nueva,comienzo,longitud): Sustituye una porción del contenido de una cadena </li></ul></ul>
  26. 26. PHP <ul><li><?php </li></ul><ul><li>echo strlen(&quot;12345&quot;),&quot;<br>&quot;; </li></ul><ul><li>// devuelve 5 </li></ul><ul><li>$palabras=split(&quot; &quot;,&quot;Esto es una prueba&quot;); </li></ul><ul><li>for($i=0;$palabras[$i];$i++) </li></ul><ul><li>echo $palabras[$i],&quot;<br>&quot;; </li></ul><ul><li>// devuelve cada palabra en una fila </li></ul><ul><li>echo substr(&quot;Devuelve una subcadena de otra&quot;,9,3),&quot;<br><br>&quot;; </li></ul><ul><li>// devuelve “ una ” </li></ul><ul><li>echo strpos(&quot;Busca la palabra en la frase&quot;, &quot;palabra“); </li></ul><ul><li>// devuelve 9 </li></ul><ul><li>echo str_replace(&quot;verde&quot;,&quot;rojo&quot;,&quot;verde que te quiero verde .&quot;); </li></ul><ul><li>// devuelve “ rojo que te quiero rojo ”; </li></ul><ul><li>?> </li></ul>
  27. 27. PHP <ul><li>Manejo de fecha y hora </li></ul><ul><ul><li>date: permite dar formato a una hora/fecha </li></ul></ul><ul><ul><li>getdate:  devuelve un array con los elementos </li></ul></ul><ul><ul><ul><li>“ seconds” = segundos “minutes” = minutos “hours” = horas “mday” = día del mes “wday” = día del mes en número “mon” = número del mes “year” = año “yday” = número de día del año, por ejemplo “125” “weekday” = día de la semana en letra (ingles), por ejemplo “Monday” “month” = mes en letra (ingles), por ejemplo “November” </li></ul></ul></ul><ul><ul><li>time: Devuelve la fecha actual en formato timestamp de UNIX. Este formato es un número (int) que indica el número de segundos transcurridos desde las 00:00:00 del día 1 de enero de 1970 GMT. </li></ul></ul>
  28. 28. PHP <ul><li><?php </li></ul><ul><li>$hora = time(); </li></ul><ul><li>echo ($hora); </li></ul><ul><li>echo &quot;<br>&quot;; </li></ul><ul><li>// muestra “1241110230 &quot; </li></ul><ul><li>$hora = getdate(time()); </li></ul><ul><li>echo( $hora[&quot;mday&quot;] . &quot;/&quot; . $hora[&quot;mon&quot;] . &quot;/&quot; . $hora[&quot;year&quot;] ); </li></ul><ul><li>echo &quot;<br>&quot;; </li></ul><ul><li>//muestra “30/4/2009” </li></ul><ul><li>echo($hora[&quot;hours&quot;] .&quot;:”. $hora[&quot;minutes&quot;] .&quot;:”. $hora[&quot;seconds&quot;] ); </li></ul><ul><li>//muestra 18:50:30 </li></ul><ul><li>?> </li></ul>
  29. 29. PHP <ul><li>Manejo ficheros </li></ul><ul><ul><li>fopen ( archivo, modo): abre un fichero o URL (lectura/escritura/añadir…) </li></ul></ul><ul><ul><ul><li>$fp = fopen(’info.txt’, ’r’); </li></ul></ul></ul><ul><ul><li>fclose ( int): Cierra un fichero abierto </li></ul></ul><ul><ul><ul><li>fclose ($fp); </li></ul></ul></ul><ul><ul><li>copy(‘archivo.txt',‘directorio'): Copiar un archivo </li></ul></ul><ul><ul><li>if(copy('datos.txt',‘copia/datos.bak' )) </li></ul></ul><ul><ul><li>{ </li></ul></ul><ul><ul><li>echo &quot;el fichero se copio con éxito.<br>&quot;; </li></ul></ul><ul><ul><li>} else echo &quot;el fichero no se copio .<br>&quot;; </li></ul></ul><ul><ul><li>Unlink: Borra un fichero </li></ul></ul><ul><ul><li>unlink('datos.txt'); </li></ul></ul><ul><ul><li>mkdir: crea un directorio </li></ul></ul><ul><ul><li>rmdir: borra un directorio </li></ul></ul><ul><ul><li>is_dir: dice si es un directorio </li></ul></ul><ul><ul><li>is_file: dice si es un fichero </li></ul></ul>
  30. 30. PHP <ul><li>Manejo ficheros </li></ul><ul><ul><li><? </li></ul></ul><ul><ul><li>//Abrimos el fichero en modo de escritura </li></ul></ul><ul><ul><li>$DescriptorFichero = fopen(&quot;datos.txt&quot;,&quot;w&quot;); </li></ul></ul><ul><ul><li>//Escribimos la primera línea dentro de él </li></ul></ul><ul><ul><li>$string1 = &quot;Esta es la primera línea de texto&quot;; </li></ul></ul><ul><ul><li>fputs($DescriptorFichero,$string1); </li></ul></ul><ul><ul><li>//Escribimos la segunda línea de texto </li></ul></ul><ul><ul><li>$string2 = &quot;Y esta es la segunda línea de texto&quot;; </li></ul></ul><ul><ul><li>fputs($DescriptorFichero,$string2); </li></ul></ul><ul><ul><li>//Cerramos el fichero </li></ul></ul><ul><ul><li>fclose($DescriptorFichero); </li></ul></ul><ul><ul><li>?> </li></ul></ul>
  31. 31. PHP <ul><li>Excepciones </li></ul><ul><ul><li>Permiten el control de errores </li></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><ul><li>function division($dividendo, $divisor) { </li></ul></ul></ul><ul><ul><ul><li>if($divisor==0) </li></ul></ul></ul><ul><ul><ul><li>throw new Exception(‘Division entre cero!',0); </li></ul></ul></ul><ul><ul><ul><li>return $dividendo/$divisor; </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><ul><li>try { </li></ul></ul></ul><ul><ul><ul><li>echo division(15,0); </li></ul></ul></ul><ul><ul><ul><li>} catch(Exception $e) { </li></ul></ul></ul><ul><ul><ul><li>echo “se ha producido un error: “. $e->getMessage(); </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul>
  32. 32. PHP <ul><li>Recuperar valores de formularios </li></ul><ul><ul><li>Un formulario puede enviarse con el método &quot;get&quot; o &quot;post&quot; </li></ul></ul><ul><ul><li>Se usa $_GET y $_POST </li></ul></ul><ul><ul><li>Ejemplo: recuperar variables pasadas por URL </li></ul></ul><ul><ul><ul><li><html> </li></ul></ul></ul><ul><ul><ul><li><body> </li></ul></ul></ul><ul><ul><ul><li><?php </li></ul></ul></ul><ul><ul><ul><li>foreach ($_GET as $nombre => $param) </li></ul></ul></ul><ul><ul><ul><li>{ </li></ul></ul></ul><ul><ul><ul><li>?> </li></ul></ul></ul><ul><ul><ul><li><p><?=$nombre.': '.$param?></p> </li></ul></ul></ul><ul><ul><ul><li><? </li></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><ul><li>?> </li></ul></ul></ul><ul><ul><ul><li></body> </li></ul></ul></ul><ul><ul><ul><li></html> </li></ul></ul></ul>
  33. 33. PHP <ul><li>Ejemplo </li></ul><ul><ul><li>Formulario </li></ul></ul><ul><ul><li><html> <head>    <title>Ejemplo de PHP</title> </head> <body> <FORM ACTION=&quot;procesa2.phtml&quot; METHOD=&quot; POST/GET &quot;> Introduzca su nombre:<INPUT TYPE=&quot;text&quot; NAME=&quot;nombre&quot;><BR> Introduzca sus apellidos:<INPUT TYPE=&quot;text&quot; NAME=&quot;apellidos&quot;><BR> <INPUT TYPE=&quot;submit&quot; VALUE=&quot;Enviar&quot;> </FORM> </body> </li></ul></ul><ul><ul><li></html> </li></ul></ul><ul><ul><li>Recuperar datos </li></ul></ul><ul><ul><li><html> <head>    <title>Ejemplo de PHP</title> </head> <body> El nombre por GET: <?php echo $_GET['nombre'],&quot; &quot;,$_GET['apellidos'] ?><br> El nombre por POST: <?php echo $_POST['nombre'],&quot; &quot;,$_POST['apellidos'] ?> </body> </li></ul></ul><ul><ul><li></html> </li></ul></ul>
  34. 34. PHP <ul><li>Sesiones </li></ul><ul><ul><li>Las sesiones básicamente son variables globales que nos permiten almacenar datos que necesiten volver a ser usados en otros accesos a la pagina </li></ul></ul><ul><ul><li>Usadas entre otras cosas en la validación de usuarios </li></ul></ul><ul><ul><ul><li>1º.- Se crea el formulario de validación (login.php) </li></ul></ul></ul><ul><ul><ul><li>2º.- Se comprueba la validez del usuario (autenticacion.php) </li></ul></ul></ul><ul><ul><ul><li>3º.- Se crea la sesión y se da acceso al usuario o se deniega el mismo </li></ul></ul></ul>
  35. 35. PHP
  36. 36. PHP <ul><li>Sesiones (autenticacion.php) </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>//vemos si el usuario y contraseña son válidos if ($_POST[&quot;usuario&quot;]==&quot;usuario&quot; && $_POST[&quot;contrasena&quot;]==&quot;123&quot;){ //usuario y contraseña válidos </li></ul></ul><ul><ul><li>session_start(); $_SESSION[&quot;autenticado&quot;]= &quot;SI&quot;; </li></ul></ul><ul><ul><li>// mayor seguridad almacenando ssesion_id() </li></ul></ul><ul><ul><li>$_SESSION[“id_misesion&quot;]= session_id(); </li></ul></ul><ul><ul><li>header (&quot;Location: aplicacion.php&quot;); </li></ul></ul><ul><ul><li>}else { </li></ul></ul><ul><ul><li>//si no existe se va a login.php header(&quot;Location: login.php?errorusuario=si&quot;); } </li></ul></ul><ul><ul><li>?> </li></ul></ul>
  37. 37. PHP <ul><li>Sesiones (seguridad.php) </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>//Inicio la sesión session_start(); </li></ul></ul><ul><ul><li>//COMPRUEBA QUE EL USUARIO ESTA AUTENTICADO if ($_SESSION[&quot;autenticado&quot;] != &quot;SI&quot;) { </li></ul></ul><ul><ul><li>//si no existe, va a la página de autenticacion header(&quot;Location: login.php&quot;); </li></ul></ul><ul><ul><li>//salimos de este script exit(); } </li></ul></ul><ul><ul><li>?> </li></ul></ul><ul><ul><li>Este código lo incluimos en todas las páginas que requieran validación </li></ul></ul>
  38. 38. PHP <ul><li>Conexión a BBDD </li></ul><ul><ul><li>mysql_connect($hostname,$user,$password) </li></ul></ul><ul><ul><li>//cierre de conexión </li></ul></ul><ul><ul><li>mysql_close($conexion); </li></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><li><?php $servidor=&quot;localhost&quot;; $login=“usuario&quot;: $password=“contraseña&quot;; </li></ul></ul><ul><ul><li>$db=“basededatos” $conexion=mysql_connect($servidor,$login,$password); </li></ul></ul><ul><ul><li> mysql_select_db($db, $conexion); </li></ul></ul><ul><ul><li> mysql_close($conexion); </li></ul></ul><ul><ul><li>?> </li></ul></ul>
  39. 39. PHP <ul><li>Sentencia BBDD </li></ul><ul><ul><li>$result = mysql_query($query); </li></ul></ul><ul><ul><li>Ejemplo </li></ul></ul><ul><ul><li>$query=&quot;SELECT * FROM tabla&quot;; </li></ul></ul><ul><ul><li>$result=mysql_query($query,$conexion); </li></ul></ul><ul><ul><li>$numrows=mysql_num_rows($result); </li></ul></ul><ul><ul><li>while ($datos=mysql_fetch_array($result)){ echo $datos[&quot;Nombre&quot;], &quot; - &quot;, $datos[&quot;Direccion&quot;] ,&quot;<BR>&quot; ; } echo &quot;Numero de registros $numrows<br>&quot;; </li></ul></ul>

×