capitulo 6 php introducción: el lenguaje php es un lenguaje de programación de estilo clásico,...

21
Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación con variables, sentencias condicionales, bucles, funciones.... Está mas cercano a JavaScript o a C, para aquellos que conocen estos lenguajes. PHP se ejecuta en el servidor , por eso nos permite acceder a los recursos que tenga el servidor como por ejemplo podría ser una base de datos. El programa PHP es ejecutado en el servidor y el resultado enviado al navegador. El resultado es normalmente una página HTML.

Upload: vanesa-calderon-rivas

Post on 24-Jan-2016

238 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Capitulo 6PHP

Introducción:

El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación con variables, sentencias condicionales, bucles, funciones....

Está mas cercano a JavaScript o a C, para aquellos que conocen estos lenguajes.

PHP se ejecuta en el servidor, por eso nos permite acceder a los recursos que tenga el servidor como por ejemplo podría ser una base de datos.

El programa PHP es ejecutado en el servidor y el resultado enviado al navegador. El resultado es normalmente una página HTML.

Page 2: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

PHP en HTMLLa ventaja que tiene PHP sobre otros lenguajes de programación que se ejecutan en el servidor (como podrían ser los script CGI Perl), es que nos permite intercalar las sentencias PHP en las paginas HTML, es un concepto algo complicado de entender si no se ha visto nunca como funciona unas paginas PHP o ASP.

Para delimitar la sección de código PHP podemos hacerlo de varias formas: -Usando las etiquetas <?php y <? -Usando las etiquetas <? y ?> -Mediante <script languaje="php"> </script>

Capitulo 6PHP

El funcionamiento de las páginas en PHP alojadas en un servidor es el siguiente:

-El servidor (APACHE) transfiere el resultado en HTML y es mostrado en el navegador del cliente.

-El navegador del cliente solicita el documento PHP.

-Llega la solicitud del servidor (APACHE) y el servidor localiza el documento, lanza el intérprete de PHP y ejecuta todo su código.

-Una vez ejecutado el código se genera el resultado en HTML y lo devuelve al servidor (APACHE) para que lo transfiera al cliente.

CLIENTE

SERVIDOR

Page 3: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

PHP en HTML

Capitulo 6PHP

Ejemplo sencillo para comprenderlo mejor. En azul está el código HTML y en rojo el código PHP.

<html> <head>    <title>Ejemplo de PHP</title> </head>

<body>

Parte de HTML normal. <BR><BR>

<?php    echo "Parte de PHP<br>";

       for($i=0;$i<10;$i++)    {       echo "Linea ".$i."<br>";

   } ?>

</body> </html>

<html> <head> <title>Ejemplo de PHP</title> </head>

<body>

Parte de HTML normal. <BR><BR>

Parte de PHP<br>Linea 0<br>Linea 1<br>Linea 2<br>Linea 3<br>Linea 4<br>Linea 5<br>Linea 6<br>Linea 7<br>Linea 8<br>Linea 9<br>

</body> </html>

Archivo.php En el navegador veremos El código fuente generado

Muestra el texto: “Parte de PHP” y da un enter (<BR>), enseguida hace un ciclo de

0 a 9 (<10) y por cada vez escribe en pantalla “Linea “ y el valor de la variable

$i.

Page 4: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Variables en PHPEn PHP todas las variables comienzan con el símbolo del dólar $

No es necesario definir una variable antes de usarla.

Tampoco tienen tipos, es decir que una misma variable puede contener un número y luego puede contener caracteres.

Ejemplos:

Capitulo 6PHP

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    $a = 1;    $b = 3.34;    $c = "Hola Mundo";    echo $a,"<br>",$b,"<br>",$c; ?> </body> </html>

Variable de tipo enteroVariable de tipo realVariable de tipo string

En pantalla se muestra

Page 5: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Variables en PHP

Capitulo 6PHP

Otro hecho que cabe destacar a la hora de programar en PHP y la declaración de variables es que PHP es un lenguaje "CASE SENSITIVE" es decir que diferencia entre mayúsculas y minúsculas y debido a esta razón no sería lo mismo $miVariable=valor; que $MiVaRiABle=valor; ya que PHP lo interpretaría como dos variables completamente diferentes.

Los tipos de datos posibles que puede almacenar una variable son los siguientes :

•Integer Números enteros positivos y negativos •Double Números decimales o de coma flotante •String Cadenas de texto •Boolean Valores True o False •Array Tipo especial de colección de valores •Object Tipo especial de dato complejo

Page 6: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Mi Primer Script PHP Una vez que ya tenemos instalados PHP y MySQL , y el servidor Apache configurado para usarlos, podemos comenzar a escribir nuestro primer script en PHP.

Ejemplo script php   <html> <body> <?php $myvar = "Hola. Este es mi primer script en PHP"; //Esto es un comentario //es mi primer script en PHP n"; //Esto es un comentario echo $myvar; ?> </body> </html>

Capitulo 6PHP

Guardar el código en un archivo con extensión .php (el nombre que ustedes quieran, y poner el archivo en el directorio C:\wamp\www

Lo ejecutamos poniendo la siguiente dirección en el Internet Explorer: http://localhost/nombre.php, y veremos lo siguiente:Muestra en pantalla

el contenido la variable $myvar

Asigna a la variable $myvar un texto

Para comentarear una línea se pone el inicio de ella doble diagonal “//”

Page 7: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Operadores en PHP

Capitulo 6PHP

Operadores aritméticos + Suma dos valores -Resta dos valores (o pasa a negativo un valor) * Multiplica dos valores / Divide dos valores % Resto de dividir dos valores ++ Incremento en una unidad -- Decremento en una unidad

Operadores de asignación = Asigna a la parte derecha el valor izquierdo += Realiza la suma de la derecha con la izquierda y la asigna a la derecha -= Realiza la resta de la derecha con la izquierda y la asigna a la derecha *= Realiza la multiplicación de la derecha con la izquierda y la asigna a la derecha /= Realiza la división de la derecha con la izquierda y la asigna a la derecha %= Se obtiene el resto y se asigna .= Concatena el valor de la izquierda con la derecha y lo asigna a la derecha

Operadores lógicos ! Operador NO o negacion.Si era true pasa a false y viceversa and Operador Y, si ambos son verdaderos vale verdadero or Operador O, vale verdadero si alguno de los dos es verdadero xor Verdadero si alguno de los dos es true pero nunca ambos && True si ambos lo son || True si alguno lo es

Operadores condicionales == Comprueba si dos números son iguales != Comprueba si dos números son distintos > Mayor que, devuelve true en caso afirmativo < Menor que, devuelve true en caso afirmativo >= Mayor o igual <= Menor o igual

Page 8: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Operadores en PHP (cont.)Ejemplo script php  

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    $a = 8;    $b = 3;    echo $a + $b,"<br>";    echo $a - $b,"<br>";    echo $a * $b,"<br>";    echo $a / $b,"<br>";    $a++;    echo $a,"<br>";    $b--;    echo $b,"<br>"; ?> Operadores Comparacióm <BR><?php $a = 8; $b = 3; $c = 3;

Capitulo 6PHP

Guardar el código en un archivo con extensión .php (el nombre que ustedes quieran, y poner el archivo en el directorio C:\wamp\www

Lo ejecutamos poniendo la siguiente dirección en el Internet Explorer: http://localhost/nombre.php, y veremos lo siguiente:

// continuacion…

echo $a == $b,"<br>"; echo $a != $b,"<br>"; echo $a < $b,"<br>"; echo $a > $b,"<br>"; echo $a >= $c,"<br>"; echo $b <= $c,"<br>"; ?> Operadores Lógicos <BR><?php $a = 8; $b = 3; $c = 3; echo ($a == $b) && ($c > $b),"<br>"; echo ($a == $b) || ($b == $c),"<br>"; echo !($b <= $c),"<br>"; ?> </body> </html>

Page 9: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia if ... else en PHP

Capitulo 6PHP

Las sentencias condicionales nos permiten ejecutar o no unas ciertas instrucciones dependiendo del resultado de evaluar una condición. Las más frecuentes son la instrucción if y la instrucción switch.

Sintaxis:

<?php    if (condición)    {       Sentencias a ejecutar cuando la       condición es cierta.    }    else    {       Sentecias a ejecutar cuando la       condición es falsa.    } ?>

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    $a = 8;    $b = 3;    if ($a < $b)    {       echo "a es menor que b";    }    else    {       echo "a no es menor que b";    } ?> </body> </html>

Puede jugar con los valores de $a y $b

Page 10: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia switch…case en PHP

Capitulo 6PHP

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    $posicion = "arriba";        switch($posicion) {       case "arriba":   // Bloque 1          echo "La variable contiene";          echo " el valor arriba";          break;       case "abajo":   // Bloque 2          echo "La variable contiene";          echo " el valor abajo";          break;       default:   // Bloque 3          echo "La variable contiene otro valor";          echo " distinto de arriba y abajo";    } ?> </body> </html>

Puede jugar con el valor de $posicion

Page 11: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia while en PHP

Capitulo 6PHP

Los bucles nos permiten iterar conjuntos de instrucciones, es decir repetir la ejecución de un conjunto de instrucciones mientras se cumpla una condición.

Sintaxis:

<?php    while (condición)    {       intrucciones a ejecutar.    } ?>

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title>

</head> <body> Inicio<BR> <?php    $i=0;    while ($i<10)    {       echo "El valor de i es ", $i,"<br>";       $i++;    } ?> Final<BR> </body> </html>

Page 12: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia do..while en PHP

Capitulo 6PHP

Sintaxis:

<?php    do    {       intrucciones a ejecutar.    } while (condición) ?>

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title>

</head> <body> Inicio<BR> <?php    $i=0;    do {       echo "El valor de i es ", $i,"<br>";       $i++;    }  while ($i<10) ?> Final<BR> </body> </html>

Page 13: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia for en PHP

Capitulo 6PHP

Sintaxis:

<?php    for (inicial ; condición ; ejecutar en iteración)    {       intrucciones a ejecutar.

   } ?>

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title>

</head> <body> Inicio<BR> <?php    for($i=0 ; $i<10 ; $i++)    {       echo "El valor de i es ", $i,"<br>";    } ?> Final<BR> </body> </html>

La instrucción for es la instrucción de bucles más completa. En una sola instrucción nos permite controlar todo el funcionamiento del bucle.

BREAK Se usa para detener el bucle y dejar de interpretar el código que sigue después de el break CONTINUE Sirve para volver al principio del bucle desde cualquier parte del bucle.

Page 14: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia printf en PHP

Capitulo 6PHP

Hasta ahora hemos usado la instrucción echo para realizar salida a pantalla, esta instrucción es bastante limitada ya que no nos permite formatear la salida. En esta página veremos la instrucción printf que nos da mucha más potencia.Sintaxis:

<?php    printf(cadena formato, variable1, variable2...); ?>

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    printf("El numero dos con diferentes formatos: %d %f %.2f",2,2,2); ?> </body> </html>

Page 15: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Sentencia printf en PHP (cont.)

Capitulo 6PHP

La cadena de formato puede incluir una seria de carácteres especiales que indican como formatear las variables que se incluyen en la instrucción.

Ejemplo:

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    $var="texto";    $num=3;    printf("Puede fácilmente intercalar <b>%s</b> con números <b>%d</b> <br>",$var,$num);        printf("<TABLE BORDER=1 CELLPADDING=20>");    for ($i=0;$i<10;$i++)    {       printf("<tr><td>%10.d</td></tr>",$i);    }    printf("</table>"); ?> </body> </html>

Elemento

Tipo de variable

%sCadena de carácteres.

%dNúmero sin decimales.

%fNúmero con decimales.

%c Carácter ASCII.

Aunque existen otros tipos, estos son los más importantes.

Page 16: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Manejo de cadenas en PHP

Capitulo 6PHP

Dado el uso del lenguaje PHP el tratamiento de cadenas es muy importante, existen bastantes funciones para el manejo de cadenas, a continuación explicaremos las más usadas.•strlen(cadena). Nos devuelve el número de carácteres de una cadena.

•split(separador,cadena). Divide una cadena en varias usando un carácter separador.

•sprintf(cadena de formato, var1, var2...). Formatea una cadena de texto al igual que printf pero el resultado es devuelto como una cadena.

•substr(cadena, inicio, longitud). Devuelve una subcadena de otra, empezando por inicio y de longitud longitud.

•chop(cadena). Elimina los saltos de línea y los espacios finales de una cadena.

•strpos(cadena1, cadena2). Busca la cadena2 dentro de cadena1 indicándonos la posición en la que se encuentra.

•str_replace(cadena1, cadena2, texto). Reemplaza la cadena1 por la cadena2 en el texto.

Page 17: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Manejo de cadenas en PHP (cont.)

Capitulo 6PHP

Ejemplo:<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <?php    echo strlen("12345"),"<br>";        $palabras=split(" ","Esto es una prueba");    for($i=0;$palabras[$i];$i++)       echo $palabras[$i],"<br>";           $resultado=sprintf("8x5 = %d <br>",8*5);    echo $resultado,"<br>";        echo substr("Devuelve una subcadena de otra",9,3),"<br><br>";

   if (chop("Cadena \n\n ") == "Cadena")       echo "Iguales<br><br>";

   echo strpos("Busca la palabra dentro de la frase", "palabra"),"<br><br>";        echo str_replace("verde","rojo","Un pez de color verde, como verde es la hierba."),"<br>";     ?> </body> </html>

Page 18: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Envío y recepción de datos en PHP

Capitulo 6PHP

En este punto analizaremos la opción que nos da PHP para poder enviar información a un archivo PHP y recibir información en un archivo PHP.

Envio: El lenguaje PHP nos proporciona una manera sencilla de manejar formularios, permitiéndonos de esta manera procesar la información que el usuario ha introducido.

Al diseñar un formulario debemos indicar la página PHP que procesará el formulario, así como en método por el que se le pasará la información a la página.<html>

<head>    <title>Ejemplo de PHP</title> </head> <body> <H1>Ejemplo de procesado de formularios</H1> Introduzca su nombre: <FORM ACTION="procesa.php" METHOD="GET"> <INPUT TYPE="text" NAME="nombre"><BR> <INPUT TYPE="submit" VALUE="Enviar"> </FORM> </body> </html>

Se solicita el nombre de la persona y se guarda en una variable llamada “nombre”,

al dar click en el boton enviar la variable es enviada al programa llamado procesa.php

Page 19: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Envío y recepción de datos en PHP (cont.)

Capitulo 6PHP

Envío (cont.): El resultado que obtenemos es el siguiente:

Al dar click en el botón Enviar, html busca el archivo procesa.php,

En este caso el archivo no existe y nos marca un error

Podemos darnos cuenta la manera en que PHP envía la información con el método GET:

http://cnco.cfemex.com/procesa.phtml?nombre=german+lopez+calderon

Nombre del archivo que recibe la(s) variable(s)

Símbolo “?”, para indicar que enseguida van las variables

La variable “nombre” con su respectivo valor (espacios “+”)

Este archivo puede guardarse como envio

html o envio .php

Page 20: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Envío y recepción de datos en PHP (cont.)

Capitulo 6PHP

Recepción: Continuando con el ejemplo anterior ahora escribiremos el programa procesa.php, quien recibirá la variable nombre.

<html> <head>    <title>Ejemplo de PHP</title> </head> <body> <H1>Ejemplo de procesado de formularios</H1> El nombre que ha introducido es: <? echo $nombre; ?> <br> </body> </html>

<html> <head> <title>Ejemplo de PHP</title> </head> <body> <H1>Ejemplo de procesado de formularios</H1> El nombre que ha introducido es: german lopez calderon <br> </body> </html>

Código fuente generado

Código PHP del archivo procesa.php

Obtenemos

Page 21: Capitulo 6 PHP Introducción: El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es un lenguaje de programación

Envío y recepción de datos en PHP

Capitulo 6PHP

En la página anterior hemos comentado que los datos de un formulario se envía mediante el método indicado en el atributo METHOD de la etiqueta FORM, los dos métodos posibles son GET y POST.

La diferencia entre estos dos métodos radica en la forma de enviar los datos a la página, mientras que el método GET envía los datos usando la URL, el método POST los envía por la entrada estándar STDIO.

El resultado final es el mismo, solo que con el método GET podemos ver los parámetros pasados ya que están codificados en la URL.