Sunteți pe pagina 1din 18

1

INSTITUTO TECNOLOGICO SUPERIOR DE VALLADOLID

Sntesis sobre el lenguaje de programacin PHP Programacin web


Jazael Antonio Mex Ceme 02/10/2011

Contenido

PHP .....................................................................................................................................................3 Tipos de datos y variables ...............................................................................................................3 Operadores: aritmticos, relacionales y lgicos ...........................................................................4 Operadores aritmticos ................................................................................................................4 Operadores relacionales ..............................................................................................................5 Operadores lgicos .......................................................................................................................5 Sentencias ..........................................................................................................................................6 Estructuras de Control ......................................................................................................................7 Definicin de funciones ................................................................................................................. 11 Procesamiento de formularios ..................................................................................................... 12 Sesiones .......................................................................................................................................... 14 Conectividad con BD ..................................................................................................................... 17

PHP El cdigo PHP puede incluirse dentro del cdigo HTML de la pgina. Para delimitar la seccin de cdigo PHP podemos hacerlo de varias formas: -Usando las etiquetas <?php y <? -Usando las etiquetas <? y ?> -Mediante <script languaje="php"> </script> El funcionamiento de las pginas en PHP alojadas en un servidor es el siguiente: El navegador del cliente solicita el documento PHP. Llega la solicitud del servidor y el servidor localiza el documento, lanza el intrprete de PHP y ejecuta todo su cdigo. Una vez ejecutado el cdigo se genera el resultado en HTML y lo devuelve al servidor para que lo transfiera al cliente. El servidor transfiere el resultado en HTML y es mostrado en el navegador del cliente.

Tipos de datos y variables En PHP no hace falta declarar la variable ya que simplemente anteponiendo el carcter $ al nombre de la variable estamos indicando que es una variable. Integer (entero, e.g: -1): $x = -1; Double (real, e.g: 1.24): $x = 1.24; String (cadena de caracteres, e.g: "Hello"): $x = "Hello"; Boolean (Valores posibles: true, false): $x = true; $x = ( $precio1 > $precio2 );

Variables caractersticas de PHP

argv $_SERVER['argc'] $_SERVER['PHP_SELF']

Array de argumentos pasados en la ejecucin del script. Nmero de parametros pasados al script en su ejecucin. Nombre del script que se est ejecutando Array asociativo de pares (clave,valor) pasados a travs de

$_COOKIE cookies Array asociativo de pares (clave,valor) pasados a travs de $_GET GET Array asociativo de pares (clave,valor) pasados a travs de $_POST POST Array asociativo que contiene informacin de los ficheros $_FILES recibidos mediante POST $_ENV $_SERVER $_SESSION Array asociativo de pares (clave,valor) del entorno Array asociativo de pares (clave,valor) del servidor

Operadores: aritmticos, relacionales y lgicos Operadores aritmticos

Operador + -

Descripcin Suma dos valores Resta dos valores (o pasa a negativo un valor) $a + $b

Ejemplo

$a - $b

* / %

Multiplica dos valores Divide dos valores Resto de dividir dos valores

$a * $b $a / $b $a % $b

Operadores relacionales

Operador == > < >= <= != o <> Igual que Mayor que Menor que

Descripcin

Ejemplo $a == $b $a > $b $a < $b $a >= $b $a <= $b $a != $b $a <> $b

Mayor o igual que Menor o igual que No es igual que o es diferente que

Operadores lgicos

Operador

Descripcin Operador NO o negaciones. Si era true pasa a false y

Ejemplo

! viceversa and or xor && || Operador Y, si ambos son verdaderos vale verdadero

! $a

$a and $b

Operador O, vale verdadero si alguno de los dos es verdadero $a or $b Verdadero si alguno de los dos es true pero nunca ambos True si ambos lo son True si alguno lo es $a xor $b $a && $b $a || $b

Sentencias Las sentencias son expresiones que terminan en punto y coma La tpica sentencia en PHP es una asignacin: $saludos = "Bienvenidos a PHP"; Los bloques de construccin ms pequeos son las palabras indivisibles, tal como nmeros (2.718281), cadenas ("uno, dos, tres"), variables ($saludos), constantes (TRUE, FALSE) y las construcciones que definen el lenguaje ( if, then ). Estas palabras se separan de las dems por espacios en blanco o caracteres especiales que hacen de separador, como parntesis, operadores, llaves, etc.

Las sentencias que podemos emplear en php, entre estas tenemos: Declare() Require()

<?php require("archivo.php"): ?>


Es un constructor que nos permite reutilizar script o html el nmero de veces deseado.

Require_once()

La sentencia es similar a Requiere() la diferencia es que PHP verificar si el archivo ya ha sido insertado, si es asi, el archivo no se incluye nuevamente Include()

La sentencia include() inserta y evalua el archivo contenido y en caso de no encontrarlo o haber un error en el script emite un mensaje de advertencia

Include_once()

La sentencia include_once() incluye y evala el fichero especificado durante la ejecucin del script. <?php include_once "a.php"; // esto incluir a.php include_once "A.php"; // esto incluir a.php otra vez! (slo PHP 4) ?> Goto

El operador goto puede ser usado para saltar a otra seccin en el programa. El punto de destino es especificado mediante una etiqueta seguida de dos puntos y la instruccin es dada como goto seguida de la etiqueta del destino deseado. <?php for($i=0,$j=50; $i<100; $i++) { while($j--) { if($j==17) goto end; } } echo "i = $i"; end: echo 'j alcanz 17'; ?>

Estructuras de Control Las posibilidades que ofrece php son: if/else

<?php $edad = ""; if ($edad >= 18) { echo "puedes sacar el coche"; } else { echo "ve en autobs"; }

?> El ejemplo anterior compara si la edad es mayor o igual a 18 si es verdadera puede sacar el coche, si no lo es le dice ve en autobs, ya que la sentencia if/else compara lo que est en los parntesis. <?php if ($user == "pepe") { // codigo para pepe } elseif ($user == "juan") { // codigo para juan } if/elseif/else

else

{ // codigo para quienes no son juan ni pepe } ?> Funciona similar a la sentencia if else solo que evala mas condiciones y no solo una. <?php switch ($i) { case "manzana": echo "i es una manzana"; break; case "barra": echo "i es una barra"; break; case "pastel": echo "i es un pastel"; break; } ?> La sentencia switch sirve para comparar varias variables con valores diferentes y ejecutar dependiendo del cdigo, el ejemplo compara $i, si es manzana, barra o un pastel. <?php $i=1; While Switch

while ($i <=10) { echo "$i<br>";

10

$i++; } ?> El ejemplo con while va hacer mientras la variable $i tenga un valor menor de 10 ($i<=10), imprime $i y una nueva lnea. <?php $i=11; do { echo "$i<br>"; $i++; } while ($i <=10); do/while

?> La nica diferencia que existe con el anterior es que aqu la condicin se evala despus de ejecutar el cdigo.

<?php

For

for($i=1; $i<=10; $i++) { echo "$i<br>"; }

?>
Imprime el valor de $i y una lnea hasta que el valor de $i sea mayor a 10.

11

Definicin de funciones Las funciones en PHP se definen con la sintaxis function. Las funciones se llaman sin ningn prefijo, pero puede llamarse a las funciones de manera dinmica al igual que las variables, con el prefijo dlar ($). <?php function TradicionalHolaMundo (){ echo "hola mundo"; }

TradicionalHolaMundo(); // imprime "hola mundo" ?> Podemos pasar a nuestras funciones valores para que operen sobre ellos. PHP permite pasar a las funciones variables, cadenas de texto, nmeros o arrays. <?php $msg = "Como ests ?"; function TradicionalHolaMundo ($msg) { $msg= "Hola Mundo !!".$msg; echo $msg; } TradicionalHolaMundo ($msg); // vuelca "Hola Mundo !! Como estas ? echo $msg; $msg = "Como ests ?"; function TradicionalHolaMundo (&$msg) //advierte que usamos &$ { // vuelca "Como ests ?"

12

$msg= "Hola Mundo !!".$msg; echo $msg; }

TradicionalHolaMundo ($msg); // $msg -> Hola Mundo !! Como estas ? echo $msg; ?> Si la funcin debe retornar algn valor al script, debes indicarlo por medio de la expresin return. <?php function TradicionalHolaMundo ($msg) { // vuelca "Hola Mundo !! Como ests ?"

return "Hola Mundo !!".$msg; }

$blah = TradicionalHolaMundo ($msg); ?>

Procesamiento de formularios Creamos nuestro formulario HTML con la etiqueta FORM, mediante ACTION indicamos el programa que va a procesar las variables que se enven desde el formulario y con METHOD se especifica la forma en que las variables sern enviadas al servidor, existen dos formas GET y POST, en esta ocasin utilizaremos el mtodo POST.

Entre las etiquetas <form> y </form> colocaremos los campos del formulario. En este caso tenemos una caja de texto, un botn de opcin, un select, una casilla de verificacin y un botn de comando que nos servir para enviar los datos.

13

Toma en cuenta que los nombres de las variables que sern enviadas son los que especifican en el modificador name de cada campo del formulario.

Archivo Formulario.html <HTML> <BODY> <FORM ACTION=procesa.php METHOD=post> <p>Nombre <input type=text name=nombre size=30></p> <p>Sexo: Hombre<input type=radio value=hombre checked name=sexo> Mujer <input type=radio name=sexo value=mujer></p> <p>Deporte favorito: <select size=1 name=deporte> <option value=Futbol>Futbol</option> <option value=Beisbol>Beisbol</option> <option value=Basquetbol>Basquetbol</option> </select></p> <p> Te gusta la comida Mexicana? <input type=checkbox name=comida value=ON></p> <p><input type=submit value=Enviar name=enviar></p> </FORM> </BODY> <HTML>

Ahora procederemos a crear el script que procesara las variables al cual llamaremos procesa.php, en el script primero verificamos que el formulario se haya enviado, esto lo hacemos con la instruccin.

14

if(isset($_POST['enviar']))

Para acceder a las variables que se enviaron desde el formulario lo hacemos con la instruccion

$_POST[nombre_variable];

Archivo: Procesa.php <?php if(isset($_POST['enviar'])) { echo Hola .$_POST['nombre'].<br>; echo Ahora se que eres:.$_POST['sexo'].<br>; echo Tu deporte favorito es:.$_POST['deporte'].<br>; if(isset($_POST['comida'])) echo y te gusta la comida mexicana <br>; else echo y no te gusta la comida mexicana <br>; } ?>

Sesiones Las sesiones son las mejor formas de almacenar la informacin de los visitantes. Ya que con las cookies aparte de tener mala fama por ser inseguras, el usuario puede desactivarlas de su navegador, mientras que las sesiones no se pueden desactivadas. Adems las cookies son almacenadas en el PC del visitante, mientras que las sesiones son guardadas en nuestro servidor, lo que nos permite almacenar mucha mayor informacin y tener un acceso ms fcil a ellas.

15

session_start() Con esta funcin, lo que aremos es comprobar si existe alguna sesin abierta, y si no hay ninguna, se abrir una. session_register() Esta funcin nos servir para registrar una variable de sesin
Ejemplo: $nombre = Giss; Sessin_register(nombre);

session_is_register() Esta funcin nos servir para saber si una variable esta registrada o no. Su sintaxis es as: $registro=session_is_register(nombre);
Cerrar una sesin equivale a des-registrar todas las variables que contiene. Para desregistrar una variable usamos la sentencia session_unregister(), lo malo de esta sentencia es que solo se puede des-registrar una sola variable por cada vez.

Para

des-registrar

todas

las

variables

de

una

sola

vez

podemos

utilizar

la

funcin session_unset().

Una vez des-registradas las variables solo nos falta terminar la sesin con la funcin session_destroy().

Ejemplo de sesiones:

<! sesion1.php -> <? session_start(); $nombre= Jaime; session_register(nombre); echo Bienvenido a mi web, $nombre;

16

<a href = "sesion2.php"> siguiente pagina </a> ?>

<! sesion2.php -> <? session_start(); echo Bienvenido a mi web de nuevo, $nombre; sesion_unregister(nombre); <a href = "sesion3.php"> siguiente pagina </a> ?>

<! sesion3.php -> <? session_start(); echo Bienvenido a mi web de nuevo otra vez, $nombre; session_destroy(); ?>

Tenemos 3 archivos con una sesin En el archivo 1: creamos la sesin y registramos la variable nombre con session_register() y lo pasamos al archivo 2 mediante un enlace. En el archivo 2: usamos la variable creada en el archivo 1 y despus des-registramos la variable con session_unregister() En el archivo 3: vemos que a pesar de que la sesin sigue abierta no le llega la variable nombre ya que la des-registremos en el archivo2, y finalmente cerramos la sesin con session_destroy().

17

Conectividad con BD Una vez que tenemos creada la base de datos en nuestro servidor, el siguiente paso es conectarnos a la misma desde una pgina PHP. Para ello PHP nos proporciona una serie de instrucciones para acceder a bases de datos MySQL. <html> <head> <title>Ejemplo de PHP</title> </head> <body> <?php function Conectarse() { if (!($link=mysql_connect("localhost","usuario","Password"))) { echo "Error conectando a la base de datos."; exit(); } if (!mysql_select_db("base_datos",$link)) { echo "Error seleccionando la base de datos."; exit(); } return $link; }

$link=Conectarse(); echo "Conexin con la base de datos conseguida.<br>";

18

mysql_close($link); //cierra la conexion ?> </body> </html>

Al ejecutar la instruccin mysql_connect creamos un vnculo entre la base de datos y la pagina PHP, este vnculo ser usado posteriormente en las consultas que hagamos a la base de datos.

Finalmente, una vez que hemos terminado de usar el vnculo con la base de datos, lo liberaremos con la instruccin mysql_close para que la conexin no quede ocupada.