Guia N2 - Proyectos Web - PHP

7
I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (1 de 7) GUÍA DE LABORATORIO N° 02 OBJETIVOS : Conocer el lenguaje script del lado del servidor PHP, su sintaxis y el lenguaje en sí con ejemplos prácticos para cada uno de los casos. 1. Qué es PHP PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generación de páginas Web dinámicas, similar al ASP de Microsoft o el JSP de Sun, incluido en páginas HTML y ejecutado en el servidor. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas características específicas de sí mismo. La meta del lenguaje es permitir rápidamente a los desarrolladores la generación dinámica de páginas. No es un lenguaje de marcas como podría ser HTML, XML o WML. Está más cercano a JavaScript o a C, para aquellos que conocen estos lenguajes. 2. ¿Cómo Funciona PHP? A diferencia de Java o JavaScript que se ejecutan en el navegador, 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 es enviado al navegador. El resultado es normalmente una página HTML pero también podría ser una página WML (Wap). Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que su navegador lo soporte, es independiente del navegador, sin embargo, para que sus páginas PHP funcionen el servidor donde están alojadas debe soportar PHP. 3. Sintaxis Básica de PHP: <?PHP ….. ….. ….. ?> <? ….. ….. ….. ?> <% ….. ….. ….. %> <script language=”PHP” ….. ….. ….. </script> 4. Ejemplos prácticos: Ejemplo1.php <HTML> <HEAD> <TITLE>Ejemplo PHP</TITLE> </HEAD> <BODY> <?PHP echo "Hola, este es un ejemplo con PHP!"; ?> </BODY> </HTML>

description

Curso de Proyectos Web por José Luis Ponce Segura

Transcript of Guia N2 - Proyectos Web - PHP

Page 1: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (1 de 7)

GUÍA DE LABORATORIO N° 02 OBJETIVOS: Conocer el lenguaje script del lado del servidor PHP, su sintaxis y el lenguaje en sí con ejemplos prácticos para cada uno de los casos. 1. Qué es PHP

PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generación de páginas Web dinámicas, similar al ASP de Microsoft o el JSP de Sun, incluido en páginas HTML y ejecutado en el servidor. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas características específicas de sí mismo. La meta del lenguaje es permitir rápidamente a los desarrolladores la generación dinámica de páginas. No es un lenguaje de marcas como podría ser HTML, XML o WML. Está más cercano a JavaScript o a C, para aquellos que conocen estos lenguajes.

2. ¿Cómo Funciona PHP?

A diferencia de Java o JavaScript que se ejecutan en el navegador, 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 es enviado al navegador. El resultado es normalmente una página HTML pero también podría ser una página WML (Wap). Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que su navegador lo soporte, es independiente del navegador, sin embargo, para que sus páginas PHP funcionen el servidor donde están alojadas debe soportar PHP.

3. Sintaxis Básica de PHP:

<?PHP ….. ….. ….. ?>

<? ….. ….. ….. ?>

<% ….. ….. ….. %>

<script language=”PHP” ….. ….. ….. </script>

4. Ejemplos prácticos:

Ejemplo1.php <HTML> <HEAD> <TITLE>Ejemplo PHP</TITLE> </HEAD> <BODY>

<?PHP echo "Hola, este es un ejemplo con PHP!"; ?> </BODY> </HTML>

Page 2: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (2 de 7)

Ejemplo2.php ¿Sabias que?

Como en C, terminando cada

sentencia las instrucciones se separan con un punto y coma.

Para que el servidor envié tex to utilizaremos la instrucción echo, aunque también podemos utiliza r print.

Este símbolo $ le indica a PHP que es una variable, nosotros podemos asignarle un texto a esta vari able, pero también pueden contener números o tablas (arrays).

El uso de la barra invertida, como en \n, no es obligatorio, pero ayuda a la depuración del cód igo que enviamos al navegador, además del \n existen otros usos.

¿Sabias que?

Operadores de Incremento y Decrementos Los operadores ++ y -- escritos al

lado de una variable producen incrementos o decrementos de una unidad en el valor de la misma.

Así mismo, los operadores +=n y -= producen incrementos o decrementos de n unidades en el valor de la variable.

Operadores de preincremento ++$A y --$A

Este operador realiza el incremento de la variable en una unidad (+1 ó -1) y luego ejecuta el contenido de la instrucción $A+=n y $A-=n Este operador realiza el incremento de la variable en n unidades (+n ó -n) y luego ejecuta el contenido de la instrucción.

Operadores de post-incremento $A++ y $A--

Cuando los operadores ++ ó -- están situados a la derecha de la variable los incrementos no se producen hasta la instrucción siguiente

<HTML> <HEAD> <TITLE>Variables y Comentarios en PHP</TITLE> </HEAD> <BODY> <?PHP $myvar = "VIGIL \n"; // Esto es un comentario tipo c++ para una línea $Myvar = "COMPUTO \n"; DEFINE ("curso", "Proyectos Web"); // Declarando una CONSTANTE //Esto imprimirá VIGIL echo $myvar; //Esto imprimirá COMPUTO ECHO $Myvar; // Esto imprimirá lo que contenga la constante curso echo curso; /* PHP distingue entre mayúsculas y minúsculas, por lo que no es lo mismo $myvar que $Myvar */ ?> </BODY> </HTML>

Ejemplo3_1.php <HTML> <HEAD> <TITLE> Ejemplo de PHP: Operadores Aritméticos</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>"; ?> </BODY> </HTML>

Ejemplo3_2.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Comparación</TITLE> </HEAD> <BODY> <?PHP $a=8; $b=3; $c=3; echo $a == $b, "<BR>"; echo $a != $b, "<BR>"; echo $a < $b, "<BR>"; echo $a > $b, "<BR>"; echo $a >= $b, "<BR>"; echo $a <= $b, "<BR>"; ?> </BODY> </HTML>

Ejemplo3_3.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Lógicos</TITLE> </HEAD> <BODY> <?PHP $a=8;

Page 3: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (3 de 7)

$b=3; $c=3; echo ($a == $b) && ($c > $b), "<BR>"; echo ($a == $b) || ($b > $c), "<BR>"; echo ($b <= $c), "<BR>"; ?> </BODY> </HTML>

¿Sabias que? El único operador de cadenas que

existen es el de concatenación, el punto.

¿Sabias que? Break: Al evaluar y comparar cada

expresión de la sentencia CASE con la expresión que evaluamos, si encontramos una condición verdadera debemos ejecutar un BREAK para que la sentencia SWITCH no siga buscando en la lista de CASE.

Ejemplo4_1.php <HTML> <HEAD> <TITLE>Condicionales If...else</TITLE> </HEAD> <BODY> <?PHP $nombre="Juan"; $nota =9; if ($nota>= 11) { echo "Muy bien estas Aprobado " .$nombre; } else { echo "Lo siento ha Desaprobado " .$nombre; } ?> </BODY> </HTML>

Ejemplo4_2.php <HTML> <HEAD> <TITLE>Condicionales If...elseif...else</TITLE> </HEAD> <BODY> <?PHP $nombre="Juan"; $nota=8; if ($nota<7) { echo "Lo siento está Ud. Desaprobado " .$nombre; } elseif ($nota>=11) { echo "Muy bien está Ud. Aprobado " .$nombre; } else { echo "Deberá dar examen de Aplazados " .$nombre; } ?> </BODY> </HTML>

Ejemplo4_3.php <HTML> <HEAD> <TITLE>Condicionales switch...case</TITLE> </HEAD> <BODY> <?PHP $a=8; $b=2; /* Asignamos valores 1,2,3 ó 4 a la variable $op para suma, resta, multip, y div. respectivamente */ $op=6; switch ($op) { case 1: echo $a + $b; break; case 2:

Page 4: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (4 de 7)

echo $a - $b; break; case 3: echo $a * $b; break; case 4: echo $a / $b; break; default: // código a ejecutar por defec to si no se cumple ninguna condición echo "Operación no válida"; } ?> </BODY> </HTML>

¿Sabias que? La sentencia WHILE ejecuta un

bloque de código mientras se cumpla una determinada condición.

Podemos romper un bucle WHILE utilizando la sentencia BREAK.

Do…While: Esta sentencia es similar a WHILE, salvo que con esta sentencia primero ejecutamos el bloque de código y después se evalúa la condición, por lo qu e el bloque de código se ejecuta siempre al menos una vez.

¿Sabias que? El bucle FOR resulta muy útil

cuando debemos ejecutar un bloque de código a condición de que una variable se encuen tre entre un valor mínimo y otro máximo.

Conoces el Foreach….

foreach ( array as var ){} La función foreach solo es aplicable a un array tanto escalar como asociativo. Ejemplo:

<? $a=array("a","b","c","d","e"); $b=array( "uno" =>"Primer valor", "dos" =>"Segundo valor", "tres" =>"Tercer valor", ); foreach($a as $pepe) { echo $pepe,"<br>"; }; foreach($b as $pepe) { echo $pepe,"<br>"; }; ?>

Ejemplo4_4.php <HTML> <HEAD> <TITLE>Bucles: ...While</TITLE> </HEAD> <BODY> Inicio <BR> <?PHP $i=1; While ($i<=10) { echo "El valor de i es ", $i, "<BR>"; // Luego de pruebe Ud. Quitando los siguientes comentarios /* if ($i==3){ echo "Aquí nos salimos", "<BR>"; break; } */ $i++; } ?> Final... <BR> </BODY> </HTML>

Ejemplo4_5.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: For</TITLE> </HEAD> <BODY> Inicio <BR> <?PHP For($i=1; $i<=10; $i++) { echo "imagen $i <img src=imagen.gif><BR>"; } ?> Final... <BR> </BODY> </HTML>

Ejemplo5.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Array Unidimensional</TITLE> </HEAD> <BODY> <? // Crearé dos arrays escalares, $a y $b $a[0]="Domingo"; $a[1]="Lunes"; // si pongo corchetes vacios va añadiendo indices automaticamente $a[]="Martes"; #equivale a escribir $a[2] $a[]="Miércoles"; #equivale a escribir $a[3] $a[]="Jueves"; #equivale a escribir $a[4] $a[]="Viernes";

Page 5: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (5 de 7)

$a[]="Sábado"; echo "Al pedir que imprima $a[1] escribirá el 2º elemento: ",$a[1],"<br>"; // puedo inicial otro array sin indicar índices // PHP empezara a contar a partir de CERO $b[]="Domingo"; $b[]="Lunes"; $b[]="Martes";$b[]="Miércoles";$b[]="Jueves"; $b[]="Viernes";$b[]="Sábado"; echo "Al pedir que imprima $b[4] escribirá el 5º elemento: ",$b[4],"<br>"; // ahora un array asociativo (un nombre y un valor) $c["Primero"]="Domingo";$c["Segundo"]="Lunes";$c["Tercero"]="Martes"; $c["Cuarto"]="Miércoles";$c["Quinto"]="Jueves";$c["Sexto"]="Viernes"; $c["Septimo"]="Sábado"; echo "Al pedir que imprima ", $c["Tercero"], " escribirá: ",$c["Tercero"],"<br>"; ?> </BODY> </HTML>

¿Sabias que? Las tablas (o Array en inglés), son

muy importantes en PHP, ya que generalmente, las funciones que devuelven varios valores, como las funciones ligadas a las bases de datos, lo hacen en forma de tabla.

Tenemos otra forma de asignar elementos a una tabla, pero un a forma más formal es utilizando la función array.

<?php $esp = array("taps", "sgc", "cc", "aiia"); //contamos el número de elemen tos de la tabla $n=count($esp); //imprimimos todos los element os de la tabla for ($i=0; $i < $n; $i++) { print ("La Especialidad $i es $esp[$i] <BR>\n"); } ?> ¿Sabias que? Funciones: Para declara una función debemos

utilizar la instrucción functi on seguido del nombre que le vamo s a dar, y después entre parénte sis la lista de argumentos separad os por comas, aunque también habr á funciones que no recojan ningú n argumento.

function nombre_de_funcion (ar g_1, arg_2, ..., arg_n) { bloque de código } Existe una manera de terminar la

ejecución de la función aunque aún haya código por ejecutar, mediante el uso de la instrucción return terminamos la ejecución del código de una función y devolvemos un valor. Podemos tener varios return en nuestra función, pero por l o general, cuantos más return tengamos menos reutilizable se rá nuestra función.

Parámetros de las funciones Existen dos formas de pasar lo s

parámetros a una función, por valor o por referencia.

En PHP, por defecto, las variables se pasan por valor. Para hacer lo por referencia debemos antepon er un ampersand (&) a la variable.

Ejemplo6_1.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Funciones</TITLE> </HEAD> <BODY> <?PHP function media($a, $b) { $med=($a+$b)/2; return $med; } $num1=13; $num2=11; echo("La media aritmética de $num1 y $num2 es". media($num1,$num2)); ?> </BODY> </HTML>

Ejemplo6_2.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Funciones</TITLE> </HEAD> <BODY> <? function Factorial($nValue) { if ($nValue <=1) { return 1; } else { return Factorial($nValue-1)*$nValue; } } $numero=5; echo("EL factorial de $numero es ". Factorial($numero)); ?> </BODY> </HTML>

Ejemplo7.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Funciones Varias</TITLE> </HEAD> <BODY> <?PHP $vigil="Instituto Superior Tecnológico Vigil";

Page 6: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (6 de 7)

$curso="Proyectos Web"; $docente="Ponce Segura, José Luis"; $pension=110; $frase1="Pablito, aúnnoheencontradounabarraespaciadoraabuenprecio…,

adios Pablito"; $frase2="¿Qué le dice un GIF a un JPG? ¡Anímate, hombre!"; echo "FUNCIONE DE SALIDA Printf :", "<BR>"; printf($pension . "<Br>"); printf("%f", $pension); printf("<Br>"); printf("S/. %7.f",$pension); printf("<Br><BR>"); echo "OTRAS FUNCIONES :", "<BR>"; echo "Longitud de var. vigil: ", strlen($vigil), "<BR>"; echo "Conversiones: ", strtoupper($docente), "<BR>"; echo "Eliminar espacios n blanco: ", trim(" Aprende PHP "), "<BR>"; echo "Extracción de subcadenas: ", substr($curso,13,8), "<BR>"; echo "Modificación de cadenas, Invertir: ", strrev($itel), "<BR>"; echo "Modificación de cadenas, Reemplazar: ",

str_replace("Pablito","Jaimito",$frase1), "<BR>"; echo "Buscar cadena B dentro de cadena A, devolver A apartir de B: ",

strstr($frase2,"?"), "<BR>"; echo "Buscar la subcadena B dentro de la cadena A y devuelve la

posición: ", strrpos($docente,","), "<BR>"; ?> </BODY> </HTML>

¿Sabias que? Cuidado: Algunas funciones son

sensibles a mayúsculas y minúsculas.

¿Sabias que? Formularios: Todo formulario comienza con l a

etiqueta <FORM ACTION="lo_que_sea.php" METHOD="post/get">. Con ACTION indicamos el script que va procesar la información que recogemos en el formulario, mientras que METHOD nos indica si el usuario del formulario va ha enviar datos (post) o recogerl os (get). La etiqueta <FORM> indi ca el final del formulario.

A partir de la etiqueta <FORM>

vienen los campos de entrada d e datos que pueden ser:

Cuadro de texto: <input type="text" name="nombre" size="20" value="jose"> Cuadro de texto con barras de desplazamiento: <textarea rows="5" name="descripcion" cols="20">Es de color rojo</textarea> Casilla de verificación: <input type="checkbox" name="cambiar" value="ON"> Botón de opción: <input type="radio" value="azul" checked name="color"> Menú desplegable: <select size="1&qu class="codigo"><select size="1" name="dia"> <option selected value="lunes">lunes</option> <option>martes</option> <option value="miercoles">miercoles</option> </select> Botón de comando: <input type="submit" value="enviar" name="enviar">

Ejemplo8_1.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Formulario de Envío de datos</TITLE> </HEAD> <BODY> //Luego de terminar biblioteca.php, desmarque los sgtes. comentarios // <? include("biblioteca.php") ?> // <? Encabezado() ?> <form action='ejemplo8_2.php' method='post'> Escribe tus Nombres: <input type='text' name='nombre' value='' size=15> <br> Escribe tus Apellidos: <input type='text' name='apellido' value='' size=15> <br> Escribe tu clave: <input type='password' name='clave' value=''> <br> Elige un Turno:<br> <input type='radio' name='turno' value='Mañana'>Mañana</br> <input type='radio' name='turno' value='Tarde'>Tarde</br> <input type='radio' name='turno' value='Noche'>Noche</br> Elige los Cursos:<br> <input type='checkbox' name="pai" value="Proyectos Web">Proy. Web<br> <input type='checkbox' name="t2" value="Taller II">Taller II<br> <input type='checkbox' name="lnx" value="Linux">Linux<br> ¿Qué Lenguajes de programación te gusta más?<br> <select name="lenguaje"> <Option>Visual Basic .NET</option> <Option>Delphi</option> <Option>PHP</option> <Option>C++</option> <Option>ASP .NET</option> <Option>Java</option> </select> <br> Comentarios <br> <textarea rows=5 cols=50 name='texto'></textarea> <br> <input type="submit" value="enviar"> <input type="reset" value="borrar"> // Desmarque el sig. comentario cuando finalice biblioteca.php // <? Pie() ?>

Page 7: Guia N2 - Proyectos Web - PHP

I.S.T. “F.P.G.V.” Computación e Informática Curso: Proyectos Web

Desarrollado por: José L. Ponce Segura www.redtacna.net Prac02 (7 de 7)

</BODY> </HTML>

¿Sabias que? Cómo ahorrarnos líneas de código: (Insertando ficheros externos) Por lo general, todos nuestros

script tienen partes de código iguales, las funciones include() y require() nos van ahorrar muchas de estas líneas de código. Amb as funciones hacen una llamada a un determinado fichero pero de do s maneras diferentes, con include(), insertamos lo que contenga el fichero que llamemos de manera literal en nuestro script, mie ntras que con require(), le decimos que el script necesitará parte de código de se encuentra en el fichero que llama require().

Ejemplo8_2.php <HTML> <HEAD> <TITLE>Ejemplo de PHP: Mostrar Datos del Formulario</TITLE> </HEAD> <BODY> <? echo "Nombres: ", $_POST['nombre'],"<br>"; echo "Apellidos: ", $_POST['apellido'],"<br>"; echo "Password: ", $_POST['clave'],"<br>"; echo "Turno: ", $_POST['turno'],"<br>"; echo "Cursos elejidos:", "<br>"; echo $_POST['pai'],"<br>"; echo $_POST['t2'],"<br>"; echo $_POST['lnx'],"<br>"; echo "Lenguaje de Programación favorito: ", $_POST['lenguaje'],"<br>"; echo "Comentarios:", "<br>"; echo $_POST['texto'],"<br>"; ?> </BODY> </HTML>

Biblioteca.php <? function Encabezado() { ?> <CENTER><img src="images/header.gif"><BR> <font size=6 face="Times" color="#0000ff">Proyectos Web</Font><br> <hr width=75%> <? } ?> <? function Pie() { ?> <CENTER><hr width=50%> <font size=2 face="Arial" color="#0000CC">Carrera: Computación e Informática</font><br> <font size=2 face="Arial" color="#0000CC">Docente: José Luis Ponce Segura</font> <hr width=50%></center> </BODY> </HTML> <? } ?> <? function Otra() { ?> <h2>Esto es otro temilla..bla..bla..bla</h2> <? } ?>

uso_biblioteca.php <? include("biblioteca.php") ?> <? Encabezado() ?> Aquí iría el contenido de la página<br> ....................<br> ...........................<br><br><br> <? Pie() ?>

Tarea Encargada: Mejore la presentación de los ejemplos, así también utilice las funciones Encabezado() y Pie() del script

biblioteca.php en los ejemplos de las presente práctica. Investigue Usted sobre la estructura Do...While, luego realice el ejercicio4_4.php utilizando Do...While. Realice al menos 3 ejemplos de la presente práctica, insertando controles en formularios para el ingreso de datos

y luego procesarlo y mostrar resultados: Ejemplo: En el script Ejemplo4_3.php realiza operación (+, -, *, /) para 2 números, pero los 2 números son fijos, AHORA haciendo uso de controles deberá ingresar esos 2 números vía teclado. Consulte al profesor

Investigue Usted sobre los array Bidimensionales y Multidimensionales con un ejemplo respectivamente. Integre 3 script PHP en un solo script llamado integrado.php, el cual mostrará todo en una sola presentación.