Aplicaciones Web

LENGUAJES WEB DEL SERVIDOR
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies



                                                     2
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies



                                                     3
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   INTRODUCCIÓN

       ¿Qué es?
       Características
       PHP5
       ¿Cómo funciona?
       El servidor




                                                     4
IES Augustóbriga – 2º SMR – Aplicaciones Web     rmonago



   ¿QUÉ ES?

       PHP Hypertext Preprocessor
       Lenguaje interpretado o de scripting
       Proposito general
            Aplicaciones web
            Aplicaciones con interfaz gráfica
       Open Source




                                                       5
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   CARACTERÍSTICAS

       Alto rendimiento
       Integración con bases de datos
       Bibliotecas incorporadas
       Facilidad de aprendizaje y uso
       Portabilidad
       Gran documentación on-line (php.net)



                                                     6
IES Augustóbriga – 2º SMR – Aplicaciones Web          rmonago



   ¿CÓMO FUNCIONA?

       Nosotros vemos páginas web en un navegador:
            Mozilla, Konqueror, Opera, Nautilus...
       Un navegador solo interpreta HTML, hojas de
        estilo (CSS) y Javascript
       Un navegador NO sabe interpretar PHP
       Entonces, ¿quién lo hace por él?




                                                            7
IES Augustóbriga – 2º SMR – Aplicaciones Web                        rmonago



   ¿CÓMO FUNCIONA? (2)

       El navegador puede:
            Mostrar una página alojada en el ordenador en el
             que él está instalado
                 Éste es el ordenador “cliente”
                 La página se muestra tal y como está guardada, no hay
                  proceso posible: tiene que ser HTML
       Pedir una página a un servidor
            El servidor puede procesar la página antes de
             enviarla al navegador


                                                                          8
IES Augustóbriga – 2º SMR – Aplicaciones Web                                        rmonago



   ¿CÓMO FUNCIONA? (3)

       Ejemplo: petición de una página PHP a un
        servidor web




                 Servidor web interpreta código PHP para generar la página HTML.

                  Es probable que en el código se hagan llamadas a bases de datos
                        para obtener datos con lo que completar dicho HTML.


                                                                                          9
IES Augustóbriga – 2º SMR – Aplicaciones Web      rmonago



   CONFIGURACIÓN DEL SERVIDOR

       Vamos a utilizar el servidor Xampp o EasyPhp
            En el ordenador local
            En el pendrive


       Instalación
       Iniciar
            servidor apache
            mysql


                                                        10
IES Augustóbriga – 2º SMR – Aplicaciones Web                         rmonago



   CONFIGURACIÓN SERVIDOR

       Para comprobar que el servidor está activo:
            http://localhost
            Aparecerá la siguiente página
                 Accedemos a través del servidor, no directamente




                                                                           11
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies



                                                     12
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     13
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     14
IES Augustóbriga – 2º SMR – Aplicaciones Web                                 rmonago



   PRIMEROS PASOS

       Como se dijo en la introducción:
            PHP se incrusta dentro del código HTML
            PHP se procesa en el servidor
                 Sirve para crear páginas HTML que después se enviarán
                  al cliente, y para realizar otras operaciones
                      Podemos generar una página según el contenido de un
                       formulario...
                      ... o según el contenido de una base de datos...
                      ... o según la hora del servidor...
                      ...



                                                                                   15
IES Augustóbriga – 2º SMR – Aplicaciones Web                          rmonago



   PRIMEROS PASOS (2)

       ¿Cómo incrustar PHP dentro del HTML?
            Con la etiqueta <?php [instrucciones] ?>
                 El servidor procesa el código que hay entre “<?php” y
                  “?>” (o símplemente “<? .... ?>”)

                 <?php echo ("Hola mundo!"); ?>




                                                                            16
IES Augustóbriga – 2º SMR – Aplicaciones Web                           rmonago



   PRIMEROS PASOS (3)

       ¿Cómo procesa el código?
            Tenemos la página:
                             <html>
                                 <body>
                                     <?php echo “Hola mundo!”; ?>
                                 </body>
                             </html>

            El servidor comienza a procesar la página
                 Si encuentra HTML, lo envía directamente al cliente
                 Si encuentra una etiqueta de PHP, procesa el código, y si
                  el código escribe algo, esa "escritura" se incluye en el
                  HTML que se envía al cliente
                                                                              17
IES Augustóbriga – 2º SMR – Aplicaciones Web         rmonago



   PRIMEROS PASOS (4)

       El servidor devolvería el siguiente fragmento:
                             <html>
                                 <body>
                                     Hola mundo!
                                 </body>
                             </html>




                                                           18
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     19
IES Augustóbriga – 2º SMR – Aplicaciones Web                   rmonago



   SINTAXIS
            Las instrucciones se escriben separadas por ';'
            Las estructuras de control son
                 if, while, switch, for, etc.
            Las llamadas a función se realizan con paréntesis
                 phpinfo();
                 strlen('abcdef'); // 6
            Los comentarios en el código se realizan con:
                 // Una sola línea
                 # Una sola línea
                 /* Varias
                   líneas    */

                                                                     20
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     21
IES Augustóbriga – 2º SMR – Aplicaciones Web                         rmonago



   TIPOS
       Existen distintos tipos: Boolean, integer, float,
        string, array, object,...
       Pero nos “desentendemos” de ellos, se decide en
        tiempo de ejecución dependiendo del contexto
              <?php
                $un_bool = TRUE;           // un valor booleano
                $un_str = "foo";           // una cadena
                $un_int = 12;              // un entero

                echo gettype($un_bool); // imprime: boolean

                // Si este valor es un entero, incrementarlo en cuatro
                if (is_int($un_int)) $un_int += 4;
              ?>


                                                                           22
IES Augustóbriga – 2º SMR – Aplicaciones Web                          rmonago



   VARIABLES

       Tienen dos particularidades:
            Pueden cambiar de tipo fácilmente
                 Ej.: si en una variable hemos guardado un entero,
                  podemos utilizarlo como un String, y viceversa
                  (siempre que el String represente un entero)
            El nombre de la variable lleva '$' delante
                 $usuario = 'jose';
       Es posible concatenar variables (strings) con el
                     <?php
        operador '.' $mensaje1 = 'Hola';
                                  $mensaje2 = 'mundo!';
                                  echo $mensaje1.' '.$mensaje2;
                                ?>
                                                                            23
IES Augustóbriga – 2º SMR – Aplicaciones Web                               rmonago



   VARIABLES (2)
       Dentro de un string delimitado con comillas
        dobles se evalúan las variables
                    $nombre = 'juan';
                    echo ("El valor de la variable nombre es $nombre.");

            Con la función “unset()” podemos quitar el valor de
             una variable
                    $var = "pepe";
                    unset($var); // Ahora no tiene valor (NULL)

            La función “isset()” nos indica si una variable está
             inicializada if (isset($var))
                                   {    echo 'Tiene valor„;}
                                                                                 24
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     25
IES Augustóbriga – 2º SMR – Aplicaciones Web                                         rmonago



   OPERADORES
                                   Operador       Simbolo Ejemplo     Resultado
       Aritméticos                Negación           -        -3         -3
                                   Adición            +       3+3          6
                                   Substracción       -      45-5         40
                                   Multiplicación     *       5*3         15
                                   División           /      60/3         20
                                   Módulo            %       7%2           1
                                   Incremento        ++   $x=3; $x++;      4


                                   Operador                        Simbolo     Equivalencia
                                   Asignación                       $x = $y       $x = $y
       Asignación                 Asignación   y suma             $x += $y     $x = $x + $y
                                   Asignación   y resta            $x -= $y     $x = $x – $y
                                   Asignación   y multiplicación   $x *= $y     $x = $x * $y
                                   Asignación   y división          $x /= $y    $x = $x / $y
                                   Asignación   y resto            $x %= $y    $x = $x % $y
                                   Asignación   y concatenación     $s .= $x    $s = $s . $x

                                                                                           26
IES Augustóbriga – 2º SMR – Aplicaciones Web                            rmonago



   OPERADORES (2)

       Comparación                Operador      Símbolo Ejemplo Resultado
                                   Igual            ==    3 == 3   cierto
                                   Idéntico        ===   3 === ”3” falso
                                   Diferente        !=     7 !=7   falso
                                                    <>    9 <> 8   cierto
                                   No idénticos    !==   “4” !== 4 cierto
                                   Menor            <      1<3     cierto
                                   Mayor            >      3>4     falso
                                   Menor o igual    <=    2 <= 1   falso


                                Operador Simbolo    Ejemplo     Resultado
       Lógicos                 Y (and)    &&    TRUE && FALSE     falso
                                O (or)      ||    TRUE || FALSE    cierto
                                NO (not)    !        ! TRUE        falso
                                                                              27
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     28
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ESTRUCTURAS DE CONTROL

       Condicionales
            If …. Else
             …elseif …
            switch

       Bucles
            For
            …
            While
            …
                                                     29
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   CONDICIONALES

       Condicional simple
         if (<condición>)
         {...}

       Condicional y alternativa
         if (<condición>)
         {...}
         else
         {...}

                                                     30
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   CONDICIONALES

       Condicional simple
         if (<condición>)
         {...}

       Condicional y alternativa
         if (<condición>)
         {...}
         else
         {...}

                                                     31
IES Augustóbriga – 2º SMR – Aplicaciones Web      rmonago



   EJEMPLO IF
              <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>

                                                        32
IES Augustóbriga – 2º SMR – Aplicaciones Web    rmonago



   CONDICIONALES (2)
            Condicional múltiple

                  switch (<expresión>)
                  {       case <valor 1>: ...
                              break;
                          case <valor 2>: ...
                              break;
                          ...
                          case <valor n>: ...
                              break;
                          default: ...
                              break;
                  }

                                                      33
IES Augustóbriga – 2º SMR – Aplicaciones Web               rmonago



   EJEMPLO SWITCH
      <?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";
           }
      ?>


                                                                 34
IES Augustóbriga – 2º SMR – Aplicaciones Web             rmonago



   BUCLES

       for
            Ejecuta un código mientas se cumpla una
             condición .
       Ejemplo:
             for ($a = 1; $a <= 10; $a++)

             {
                  echo ('<p>El número es '.$a.'</p>');
             }



                                                               35
IES Augustóbriga – 2º SMR – Aplicaciones Web              rmonago



   BUCLES

       while
            Mientras se cumpla una condición, se ejecuta al
             código que hay en el (puede no ejecutarse nunca)
            Ejemplo:
              <?php
                 $i=0;
                 while ($i<10)
                 {
                    echo "El valor de i es ", $i,"<br>";
                    $i++;
                 }
              ?>
                                                                36
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     37
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     38
IES Augustóbriga – 2º SMR – Aplicaciones Web                        rmonago



   FUNCIONES

       Podemos definir nuestras propias funciones
                  function <nombre_función> ($parm1, $parm2, ...)
                  {
                      ...
                      return <resultado>; }




       Ejemplo
                  function negrita($texto) {
                       return '<b>'.$texto.'</b>';
                  }

                  echo 'Quiero '.negrita('remarcar').' lo que es
                  '.negrita('importante');

                                                                          39
IES Augustóbriga – 2º SMR – Aplicaciones Web             rmonago



   EJEMPLO
         <html>
         <head>
            <title>Ejemplo de PHP</title>
         </head>
         <body>
         <?php
             function media_aritmetica($a, $b)
            { $media=($a+$b)/2;
               return $media;
            }
            echo media_aritmetica(4,6),"<br>";
            echo media_aritmetica(3242,524543),"<br>";
         ?>
         </body>
         </html>
FUNCIONES DE LIBRERIA
Dado el uso del lenguaje PHP el tratamiento de cadenas es muy
importante, existen bastantes funciones para el manejo de cadenas,
las más usadas:
 strlen(cadena). Devuelve el número de carácteres de una cadena.
 split(separador,cadena). Divide una cadena en varias usando un
carácter separador.
substr(cadena, inicio, longitud). Devuelve una subcadena de otra,
empezando por inicio y de longitud longitud.
 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.


                                                                      41
FUNCIONES DE LIBRERIA

   Como incluir script php desde otros ficheros.


     http://www.webestilo.com/php/php05b.phtml




                                                    42
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FUNDAMENTOS DE PHP
       Primeros pasos
       Sintaxis
       Tipos y variables
       Operadores
       Estructuras de control
       Funciones



                                                     43
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies



                                                     44
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies



                                                     45
IES Augustóbriga – 2º SMR – Aplicaciones Web      rmonago



   ACCESO A BASE DE DATOS

       Introducción
       Configuración del servidor de base de datos
       Creación de un usuario en la base de datos
       Creación de una tabla
       Importar un archivo a base de datos




                                                        46
IES Augustóbriga – 2º SMR – Aplicaciones Web           rmonago



   INTRODUCCIÓN
       Php permite al programador tanto relacionarse con
        algunas de las bases de datos más importantes del
        mundo de la programación:
            PostgreSQL
            MySql
            Oracle
            Adabas
            filePro
            ODBC
       Existen distintas formas de acceso a base de datos,

                                                              47
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   MYSQL PHPMYADMIN

    Accedemos a PHPMyAdmin
         http://localhost/phpmyadmin




                                                     48
IES Augustóbriga – 2º SMR – Aplicaciones Web               rmonago



   CREACIÓN DE USUARIO

       Creamos un usuario sobre el que trabajar
            Privilegios
            Agregar a un nuevo usuario
            Todos los privilegios de datos y estructura




                                                                 49
IES Augustóbriga – 2º SMR – Aplicaciones Web    rmonago



   CREAR LA BASE DE DATOS

       Creamos una base de datos

       Asociamos la base de datos al usuario

       Creamos tablas




                                                      50
IES Augustóbriga – 2º SMR – Aplicaciones Web         rmonago



   CREACIÓN DE UNA TABLA
       Nos identificamos con el usuario
       Seleccionamos la base de datos que se ha creado y
        sobre la que tenemos todos los privilegios
       Creamos una tabla “ejemplo” con dos campos




                                                            51
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ESTRUCTURA DE UNA TABLA

    Completamos y grabamos




                                                     52
IES Augustóbriga – 2º SMR – Aplicaciones Web          rmonago



   CONEXIÓN BD

      Las operaciones abrir/cerrar una conexión a una
       base de datoscon se realizan con el fin de hacer
       operaciones como leer/escribir y transmitir los
       datos en formato html.

    Para abrir/cerrar una conexión en MySql tenemos
     las instrucciones:
              mysql_connect(host,login,password)
              mysql_close()


                                                            53
IES Augustóbriga – 2º SMR – Aplicaciones Web        rmonago



   CONSULTAS
     mysql_db_query(database,query,ID_database)
    búsqueda     dentro de la tabla podría hacerse
       con el siguiente código:
         <?
         $db=mysql_connect("localhost","","") or
   die("Error en la conexión a MySql");
         $result=mysql_db_query("base de
   datos_anuncios","SELECT * FROM Anuncios",$db);
         mysql_close();
         ?>



                                                          54
RESULTADO DE LA CONSULTA
Estas instrucciones permiten memorizar en la variable
$result todos los anuncios que están en la tabla
Anuncios.

Para escribirlos se necesita primero hacer la operación:

     $row=mysql_fetch_row($result);

y después, la primera línea del resultado estará
disponible en la variable array $row. Para escribir el
resultado será necesaria una línea del tipo:

print($row[1]."/".$row[2]."/".$row[3]."/".
$row[4]."/");
                                                           55
SOBRE EL RESULTADO DE LA CONSULTA
Para saber el número de líneas del resultado de una
pregunta basta con usar la instrucción:

       $num_rows=mysql_num_rows($result);

Otra operación muy útil es la que devuelve el número de
campos en el grupo de resultados de la pregunta que se
acaba de hacer:

       $num=mysql_num_fields($result);




                                                          56
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   EJEMPLO BD ANUNCIOS

      Insertar
      Mostrar
      Buscar o Consultar
      Borrar




                                                     57
IES Augustóbriga – 2º SMR – Aplicaciones Web             rmonago



   INSERTAR
   <?
         # datos de la base de datos
            $host="localhost";
            $user="";
            $pass="";

         $db=mysql_connect($host,$user,$pass) or die
   ("Error durante la conexión a la base de datos");

         $sql="INSERT INTO Anuncios
   (Nombre,Email,Texto) VALUES
   ('".$nombre."','".$email."','".$texto."')";

               mysql_db_query("db_anuncios",$sql,$db);
               mysql_close();

   ?>
                                                               58
MOSTRAR RESULTADO DE LA CONSULTA
<?
# datos de la base de datos
$host="localhost";
$user="";
$pass="";

$db=mysql_connect($host,$user,$pass)
$sql="SELECT * FROM Anuncios";
$result=mysql_db_query("db_anuncios",$sql,$db);

while ($row=mysql_fetch_array($result) {
  print(“<b>Nombre</b>: <a
href=""".$row["Email"]."">".$row["Nombre"]."</a><br>");
  print(“<b>Texto del anuncio</b>:<br>");
  print(htmlentities($row["Texto"])."< br>");
 print("<hr size="1">");
}

mysql_close();
?>
                                                            59
IES Augustóbriga – 2º SMR – Aplicaciones Web                           rmonago



   BUSCAR
   <?
   # datos base de datos
   $host="localhost";
   $user="";
   $pass="";

   $db=mysql_connect($host,$user,$pass) or die ("Error durante la
   conexión al database");

   $sql="SELECT * FROM             Anuncios where ";
   $where="";                       # poner la condición
   }

   $result=mysql_db_query("db_anuncios",$sql.$where,$db);

                        ….           # operaciones para mostrar el resultado
   ?>



                                                                               60
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Información de usuario
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies


                                                     61
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   FORMULARIOS




                                                     62
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Información de usuario
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies


                                                     63
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   SESIONES




                                                     64
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Información de usuario
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies


                                                     65
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   COOKIES




                                                     66
IES Augustóbriga – 2º SMR – Aplicaciones Web   rmonago



   ÍNDICE

       Introducción
       Fundamentos de PHP
       Información de usuario
       Acceso a base de datos
       Formularios
       Sesiones
       Cookies


                                                     67

introduccion al Lenguaje php

  • 1.
  • 2.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Acceso a base de datos  Formularios  Sesiones  Cookies 2
  • 3.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Acceso a base de datos  Formularios  Sesiones  Cookies 3
  • 4.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago INTRODUCCIÓN  ¿Qué es?  Características  PHP5  ¿Cómo funciona?  El servidor 4
  • 5.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ¿QUÉ ES?  PHP Hypertext Preprocessor  Lenguaje interpretado o de scripting  Proposito general  Aplicaciones web  Aplicaciones con interfaz gráfica  Open Source 5
  • 6.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CARACTERÍSTICAS  Alto rendimiento  Integración con bases de datos  Bibliotecas incorporadas  Facilidad de aprendizaje y uso  Portabilidad  Gran documentación on-line (php.net) 6
  • 7.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ¿CÓMO FUNCIONA?  Nosotros vemos páginas web en un navegador:  Mozilla, Konqueror, Opera, Nautilus...  Un navegador solo interpreta HTML, hojas de estilo (CSS) y Javascript  Un navegador NO sabe interpretar PHP  Entonces, ¿quién lo hace por él? 7
  • 8.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ¿CÓMO FUNCIONA? (2)  El navegador puede:  Mostrar una página alojada en el ordenador en el que él está instalado  Éste es el ordenador “cliente”  La página se muestra tal y como está guardada, no hay proceso posible: tiene que ser HTML  Pedir una página a un servidor  El servidor puede procesar la página antes de enviarla al navegador 8
  • 9.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ¿CÓMO FUNCIONA? (3)  Ejemplo: petición de una página PHP a un servidor web Servidor web interpreta código PHP para generar la página HTML. Es probable que en el código se hagan llamadas a bases de datos para obtener datos con lo que completar dicho HTML. 9
  • 10.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONFIGURACIÓN DEL SERVIDOR  Vamos a utilizar el servidor Xampp o EasyPhp  En el ordenador local  En el pendrive  Instalación  Iniciar  servidor apache  mysql 10
  • 11.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONFIGURACIÓN SERVIDOR  Para comprobar que el servidor está activo:  http://localhost  Aparecerá la siguiente página  Accedemos a través del servidor, no directamente 11
  • 12.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Acceso a base de datos  Formularios  Sesiones  Cookies 12
  • 13.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 13
  • 14.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 14
  • 15.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago PRIMEROS PASOS  Como se dijo en la introducción:  PHP se incrusta dentro del código HTML  PHP se procesa en el servidor  Sirve para crear páginas HTML que después se enviarán al cliente, y para realizar otras operaciones  Podemos generar una página según el contenido de un formulario...  ... o según el contenido de una base de datos...  ... o según la hora del servidor...  ... 15
  • 16.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago PRIMEROS PASOS (2)  ¿Cómo incrustar PHP dentro del HTML?  Con la etiqueta <?php [instrucciones] ?>  El servidor procesa el código que hay entre “<?php” y “?>” (o símplemente “<? .... ?>”)  <?php echo ("Hola mundo!"); ?> 16
  • 17.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago PRIMEROS PASOS (3)  ¿Cómo procesa el código?  Tenemos la página: <html> <body> <?php echo “Hola mundo!”; ?> </body> </html>  El servidor comienza a procesar la página  Si encuentra HTML, lo envía directamente al cliente  Si encuentra una etiqueta de PHP, procesa el código, y si el código escribe algo, esa "escritura" se incluye en el HTML que se envía al cliente 17
  • 18.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago PRIMEROS PASOS (4)  El servidor devolvería el siguiente fragmento: <html> <body> Hola mundo! </body> </html> 18
  • 19.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 19
  • 20.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago SINTAXIS  Las instrucciones se escriben separadas por ';'  Las estructuras de control son  if, while, switch, for, etc.  Las llamadas a función se realizan con paréntesis  phpinfo();  strlen('abcdef'); // 6  Los comentarios en el código se realizan con:  // Una sola línea  # Una sola línea  /* Varias líneas */ 20
  • 21.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 21
  • 22.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago TIPOS  Existen distintos tipos: Boolean, integer, float, string, array, object,...  Pero nos “desentendemos” de ellos, se decide en tiempo de ejecución dependiendo del contexto <?php $un_bool = TRUE; // un valor booleano $un_str = "foo"; // una cadena $un_int = 12; // un entero echo gettype($un_bool); // imprime: boolean // Si este valor es un entero, incrementarlo en cuatro if (is_int($un_int)) $un_int += 4; ?> 22
  • 23.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago VARIABLES  Tienen dos particularidades:  Pueden cambiar de tipo fácilmente  Ej.: si en una variable hemos guardado un entero, podemos utilizarlo como un String, y viceversa (siempre que el String represente un entero)  El nombre de la variable lleva '$' delante  $usuario = 'jose';  Es posible concatenar variables (strings) con el <?php operador '.' $mensaje1 = 'Hola'; $mensaje2 = 'mundo!'; echo $mensaje1.' '.$mensaje2; ?> 23
  • 24.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago VARIABLES (2)  Dentro de un string delimitado con comillas dobles se evalúan las variables $nombre = 'juan'; echo ("El valor de la variable nombre es $nombre.");  Con la función “unset()” podemos quitar el valor de una variable $var = "pepe"; unset($var); // Ahora no tiene valor (NULL)  La función “isset()” nos indica si una variable está inicializada if (isset($var)) { echo 'Tiene valor„;} 24
  • 25.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 25
  • 26.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago OPERADORES Operador Simbolo Ejemplo Resultado  Aritméticos Negación - -3 -3 Adición + 3+3 6 Substracción - 45-5 40 Multiplicación * 5*3 15 División / 60/3 20 Módulo % 7%2 1 Incremento ++ $x=3; $x++; 4 Operador Simbolo Equivalencia Asignación $x = $y $x = $y  Asignación Asignación y suma $x += $y $x = $x + $y Asignación y resta $x -= $y $x = $x – $y Asignación y multiplicación $x *= $y $x = $x * $y Asignación y división $x /= $y $x = $x / $y Asignación y resto $x %= $y $x = $x % $y Asignación y concatenación $s .= $x $s = $s . $x 26
  • 27.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago OPERADORES (2)  Comparación Operador Símbolo Ejemplo Resultado Igual == 3 == 3 cierto Idéntico === 3 === ”3” falso Diferente != 7 !=7 falso <> 9 <> 8 cierto No idénticos !== “4” !== 4 cierto Menor < 1<3 cierto Mayor > 3>4 falso Menor o igual <= 2 <= 1 falso Operador Simbolo Ejemplo Resultado  Lógicos Y (and) && TRUE && FALSE falso O (or) || TRUE || FALSE cierto NO (not) ! ! TRUE falso 27
  • 28.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 28
  • 29.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ESTRUCTURAS DE CONTROL  Condicionales  If …. Else  …elseif …  switch  Bucles  For  …  While  … 29
  • 30.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONDICIONALES  Condicional simple if (<condición>) {...}  Condicional y alternativa if (<condición>) {...} else {...} 30
  • 31.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONDICIONALES  Condicional simple if (<condición>) {...}  Condicional y alternativa if (<condición>) {...} else {...} 31
  • 32.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago EJEMPLO IF <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> 32
  • 33.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONDICIONALES (2)  Condicional múltiple switch (<expresión>) { case <valor 1>: ... break; case <valor 2>: ... break; ... case <valor n>: ... break; default: ... break; } 33
  • 34.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago EJEMPLO SWITCH <?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"; } ?> 34
  • 35.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago BUCLES  for  Ejecuta un código mientas se cumpla una condición .  Ejemplo: for ($a = 1; $a <= 10; $a++) { echo ('<p>El número es '.$a.'</p>'); } 35
  • 36.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago BUCLES  while  Mientras se cumpla una condición, se ejecuta al código que hay en el (puede no ejecutarse nunca)  Ejemplo: <?php $i=0; while ($i<10) { echo "El valor de i es ", $i,"<br>"; $i++; } ?> 36
  • 37.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 37
  • 38.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 38
  • 39.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNCIONES  Podemos definir nuestras propias funciones function <nombre_función> ($parm1, $parm2, ...) { ... return <resultado>; }  Ejemplo function negrita($texto) { return '<b>'.$texto.'</b>'; } echo 'Quiero '.negrita('remarcar').' lo que es '.negrita('importante'); 39
  • 40.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago EJEMPLO <html> <head> <title>Ejemplo de PHP</title> </head> <body> <?php function media_aritmetica($a, $b) { $media=($a+$b)/2; return $media; } echo media_aritmetica(4,6),"<br>"; echo media_aritmetica(3242,524543),"<br>"; ?> </body> </html>
  • 41.
    FUNCIONES DE LIBRERIA Dadoel uso del lenguaje PHP el tratamiento de cadenas es muy importante, existen bastantes funciones para el manejo de cadenas, las más usadas:  strlen(cadena). Devuelve el número de carácteres de una cadena.  split(separador,cadena). Divide una cadena en varias usando un carácter separador. substr(cadena, inicio, longitud). Devuelve una subcadena de otra, empezando por inicio y de longitud longitud.  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. 41
  • 42.
    FUNCIONES DE LIBRERIA  Como incluir script php desde otros ficheros. http://www.webestilo.com/php/php05b.phtml 42
  • 43.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FUNDAMENTOS DE PHP  Primeros pasos  Sintaxis  Tipos y variables  Operadores  Estructuras de control  Funciones 43
  • 44.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Acceso a base de datos  Formularios  Sesiones  Cookies 44
  • 45.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Acceso a base de datos  Formularios  Sesiones  Cookies 45
  • 46.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ACCESO A BASE DE DATOS  Introducción  Configuración del servidor de base de datos  Creación de un usuario en la base de datos  Creación de una tabla  Importar un archivo a base de datos 46
  • 47.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago INTRODUCCIÓN  Php permite al programador tanto relacionarse con algunas de las bases de datos más importantes del mundo de la programación:  PostgreSQL  MySql  Oracle  Adabas  filePro  ODBC  Existen distintas formas de acceso a base de datos, 47
  • 48.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago MYSQL PHPMYADMIN Accedemos a PHPMyAdmin http://localhost/phpmyadmin 48
  • 49.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CREACIÓN DE USUARIO  Creamos un usuario sobre el que trabajar  Privilegios  Agregar a un nuevo usuario  Todos los privilegios de datos y estructura 49
  • 50.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CREAR LA BASE DE DATOS  Creamos una base de datos  Asociamos la base de datos al usuario  Creamos tablas 50
  • 51.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CREACIÓN DE UNA TABLA  Nos identificamos con el usuario  Seleccionamos la base de datos que se ha creado y sobre la que tenemos todos los privilegios  Creamos una tabla “ejemplo” con dos campos 51
  • 52.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ESTRUCTURA DE UNA TABLA Completamos y grabamos 52
  • 53.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONEXIÓN BD  Las operaciones abrir/cerrar una conexión a una base de datoscon se realizan con el fin de hacer operaciones como leer/escribir y transmitir los datos en formato html.  Para abrir/cerrar una conexión en MySql tenemos las instrucciones: mysql_connect(host,login,password) mysql_close() 53
  • 54.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago CONSULTAS mysql_db_query(database,query,ID_database)  búsqueda dentro de la tabla podría hacerse con el siguiente código: <? $db=mysql_connect("localhost","","") or die("Error en la conexión a MySql"); $result=mysql_db_query("base de datos_anuncios","SELECT * FROM Anuncios",$db); mysql_close(); ?> 54
  • 55.
    RESULTADO DE LACONSULTA Estas instrucciones permiten memorizar en la variable $result todos los anuncios que están en la tabla Anuncios. Para escribirlos se necesita primero hacer la operación: $row=mysql_fetch_row($result); y después, la primera línea del resultado estará disponible en la variable array $row. Para escribir el resultado será necesaria una línea del tipo: print($row[1]."/".$row[2]."/".$row[3]."/". $row[4]."/"); 55
  • 56.
    SOBRE EL RESULTADODE LA CONSULTA Para saber el número de líneas del resultado de una pregunta basta con usar la instrucción: $num_rows=mysql_num_rows($result); Otra operación muy útil es la que devuelve el número de campos en el grupo de resultados de la pregunta que se acaba de hacer: $num=mysql_num_fields($result); 56
  • 57.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago EJEMPLO BD ANUNCIOS  Insertar  Mostrar  Buscar o Consultar  Borrar 57
  • 58.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago INSERTAR <? # datos de la base de datos $host="localhost"; $user=""; $pass=""; $db=mysql_connect($host,$user,$pass) or die ("Error durante la conexión a la base de datos"); $sql="INSERT INTO Anuncios (Nombre,Email,Texto) VALUES ('".$nombre."','".$email."','".$texto."')"; mysql_db_query("db_anuncios",$sql,$db); mysql_close(); ?> 58
  • 59.
    MOSTRAR RESULTADO DELA CONSULTA <? # datos de la base de datos $host="localhost"; $user=""; $pass=""; $db=mysql_connect($host,$user,$pass) $sql="SELECT * FROM Anuncios"; $result=mysql_db_query("db_anuncios",$sql,$db); while ($row=mysql_fetch_array($result) { print(“<b>Nombre</b>: <a href=""".$row["Email"]."">".$row["Nombre"]."</a><br>"); print(“<b>Texto del anuncio</b>:<br>"); print(htmlentities($row["Texto"])."< br>"); print("<hr size="1">"); } mysql_close(); ?> 59
  • 60.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago BUSCAR <? # datos base de datos $host="localhost"; $user=""; $pass=""; $db=mysql_connect($host,$user,$pass) or die ("Error durante la conexión al database"); $sql="SELECT * FROM Anuncios where "; $where=""; # poner la condición } $result=mysql_db_query("db_anuncios",$sql.$where,$db); …. # operaciones para mostrar el resultado ?> 60
  • 61.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Información de usuario  Acceso a base de datos  Formularios  Sesiones  Cookies 61
  • 62.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago FORMULARIOS 62
  • 63.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Información de usuario  Acceso a base de datos  Formularios  Sesiones  Cookies 63
  • 64.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago SESIONES 64
  • 65.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Información de usuario  Acceso a base de datos  Formularios  Sesiones  Cookies 65
  • 66.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago COOKIES 66
  • 67.
    IES Augustóbriga –2º SMR – Aplicaciones Web rmonago ÍNDICE  Introducción  Fundamentos de PHP  Información de usuario  Acceso a base de datos  Formularios  Sesiones  Cookies 67