Sie sind auf Seite 1von 5

Incluyendo archivos

El uso de includes es excepcionalmente bueno para ahorrarte trabajo. Puedes hacer un header o un men genrico y cargarlo con el include.

Diferenciacin entre include() y require()


PHP contiene otra funcin con caractersticas muy similares, que es la funcin require(). Las caractersticas y el modo de uso de include y de require son idnticas, salvo por una cosa: El mensaje de error generado si falta un documento. Con include, si el nombre de archivo no existe, recibirs una advertencia (warning) y el script seguir. Con require en cambio el script se detendr, pues se marcar un error fatal.

conexin.php
<?php $link=mysql_connect("localhost", "usuario", "password"); mysql_select_db("basededatos",$link) OR DIE ("Error: Imposible Conectar"); ?>

script.php
<?php include("conexion.php"); // incluimos el archivo de conexin a mysql. $sql=mysql_query("SELECT * FROM tabla WHERE id='$id'"); while($row = mysql_fetch_array($sql)){ echo"$row[id]"; } ?>

Esto es un ejemplo para lo que usamos include()

variables.php
<?php ?> $nombre = "Carlos"; $pais = "Peru";

script.php
<?php requiere("variables.php"); echo"Hola $nombre. Tu eres de $pais..."; ?>

Y esto sera un ejemplo para lo que comnmente usamos requiere()

Clases
Que es una clase?. Una clase es una idea de un objeto que tiene sus caractersticas, propiedades, que en programacin llamaremos mtodos. La clase coche, por ejemplo, podra tener como propiedades el color, las puertas, el tamao, la marca, el modelo, la velocidad mxima, y como mtodos las acciones de cambiar de marcha, acelerar, frenar, abrir el cap, bloquear las puertas. Sintaxis de clases en php
<?php class nombre_clase { var $propiedad_1; var $propiedad_2; var $propiedad_3; function nombre_funcion($parametro) { instrucciones_de_la_funcin; } } ?>

Una vez definida la clase, que es el molde del objeto, se pueden crear instancias a partir de ella. En PHP se hace de la siguiente forma.
<?php $nombre_instancia = new nombre_clase($parametros); ?>

Una clase en cada archivo


En PHP no hay una forma establecida de organizar las clases. Una buena forma de hacerlo es escribiendo cada clase en un archivo distinto, de forma que a simple vista y sin tener que ver el contenido se pueda
1

saber dnde est cada una. Para poder hacer uso de esa clase, es decir, para poder crear instancias de ella hay que hacer que su definicin se incluya, est presente, en el archivo donde se cree su instancia.
<?php include("clases/class_persona.php"); $toolkit=new Persona(); ?>

La nica restriccin del lenguaje, bastante lgica, es que no se puede definir una clase dos veces, error en el que se puede caer simplemente haciendo ms de una llamada. De esta forma no se puede hacer una llamada al archivo que contiene la definicin de la clase cada vez que se quiera usarla, porque corremos el riesgo de, si tenemos un rbol de archivos algo complejo, hacer dos veces el include y generar un error. Una posible solucin es hacer uso de la funcin include_once que previene este tipo de situaciones. Incluye el archivo pasado por parmetro nicamente si antes no se ha incluido. Si por el contrario detecta que ya se ha hecho una llamada no la vuelve a hacer. La sintaxis es la misma.
<?php include_once("clases/class_persona.php"); ?>

Inclusin automtica
Partiendo del include_once se puede hilar ms fino y en base a ciertas capacidades de PHP generar un cdigo que guardado en un archivo incluya todas las clases de golpe haciendo que nos despreocupemos de los includes. Se trata de programar un script en PHP que lea todos los archivos de un directorio, y realice una accin con cada uno de ellos. En este caso la accin a realizar es un include_once. De esa forma, automticamente, slo colocando la clase en el directorio de clases se puede incluir en un mismo archivo junto con todas las dems.
<?php $dir=opendir("./class"); while ($archivo=readdir($dir)) if ($archivo!="." && $archivo!=".." && $archivo!="clases.php") include_once($archivo); closedir($dir); ?>

Paso a paso, este cdigo abre el directorio situado en la ruta ./class, lee el listado de archivos que hay dentro, y hace un include_once a cada archivo que se encuentra, exceptuando clases.php, que es en el que se colocan estas lneas. Con esto se consigue que en cada pgina de la aplicacin slo tengamos que hacer un include al archivo clases.php para que se pueda usar cualquier clase definida en el directorio.
<?php include("class/clases.php"); ?>

Herencia
La herencia es un concepto de la programacin orientada a objetos, con el que una clase puede heredar todas las propiedades y los mtodos de otra y adems aadir los suyos propios. Por ejemplo, tanto la clase Gato y la clase Tigre podran heredar el contenido de la clase Mamfero y adems tener caractersticas propias. PHP tambin est preparado para trabajar con la herencia de clases. Una clase no puede heredar las caractersticas de otra, si no existe una definicin previa de esa misma, como es lgico. Por tanto, es probable que el cdigo anterior reporte un error de ese tipo. La solucin est en el include_once. Bsicamente se trata de asegurarnos de que cuando una clase vaya a recibir la herencia de otra, esa segunda clase ya se haya incluido en el archivo. Esto se consigue haciendo la llamada a la clase padre desde el archivo de la clase hijo que va a heredar las caractersticas.
<?php include_once("class_padre.php"); class hijo extends padre { var $propiedad_1; var $propiedad_2; function mtodo_1($parametro) { instruccion_del_mtodo; } } ?>

Funciones
Muchas veces, cuando trabajamos en el desarrollo de una aplicacin, nos surge la necesidad de ejecutar un mismo bloque de cdigo en diferentes partes de nuestra aplicacin. Una Funcin no es ms que un bloque de cdigo al que le pasamos una serie de parmetros y nos devuelve un valor. Como todos los lenguaje de programacin, PHP trae una gran cantidad de funciones para nuestro uso. Para declarar una funcin debemos utilizar la instruccin function seguido del nombre que le vamos a dar, y despus entre parntesis la lista de parmetros separados por comas, aunque tambin habr funciones que no recojan ningn parmetro.
<?php function nombre_de_funcion (prm1, prm2, ...,prm_n) { bloque de cdigo } ?>

La instruccin return
Cuando invocamos una funcin, la ejecucin del programa pasa a ejecutar las lneas de cdigo que contenga la funcin. Existe una manera de terminar la ejecucin de la funcin aunque an haya cdigo por ejecutar, mediante el uso de la instruccin return terminamos la ejecucin del cdigo de una funcin y devolvemos un valor. Podemos tener varios return en nuestra funcin, pero por lo general, cuantos ms return tengamos menos reutilizable ser nuestra funcin.
<?php function mayor ($x, $y) { if ($x > $y) { return $x." es mayor que".$y; } else { return $y." es mayor que".$x; } } ?>

Tiempo y fecha
Para ver algunos ejemplos supongamos que ahora es 9 de mayo del 2008 las 12 horas 55 minutos y 55 segundos:
date('H:i:s')>09052008 date('H:i:s')>12:55:09 date('Y')>2008 date('YmdHis')>20080509125509 date('d/m/yH:ia')>09/05/08 12 : 55 pm date(dmY H:i, time())>09052008 12:55

Formateo de Pagina
En este ejemplo vamos a usar el PHP y la capacidad de definir libreras para conseguir que todas nuestras pginas tengan el mismo formato de pgina, incluyendo las partes comunes en libreras. As mismo modificando la librera modificaramos tambin todas las pginas de una manera muy rpida.

libpagina.phtml
<?php function CabeceraPagina(){ ?> <font size="+1">Esta cabecera estar en todas sus pginas.</font><br><hr> <?} function PiePagina(){ ?> <hr><font size="1">Este es el pie de pgina.</font><br> <? } function Indice(){ ?> <a href="ejem06a.phtml">Pagina 1</a><br> <a href="ejem06a2.phtml">Pagina 2</a><br> 3

<? } ?>

Formularios
Los Formularios no forman parte de PHP, sino del lenguaje estndar de Internet, HTML, pero como stos van a aparecer muchas veces durante este trabajo, le vamos a dedicar algunas lneas. Todo formulario comienza con la etiqueta <form action="loquesea.php" method="post/get">. Con action indicamos el script que va procesar la informacin que recogemos en el formulario, mientras que method nos indica la forma en que se enviarn datos post o get. La etiqueta </form> indica el final del formulario. A partir de la etiqueta <form> vienen los campos de entrada de 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 verificacin:
<input type="checkbox" name="cambiar" value="ON">

Botn de opcin:
<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>

Botn de comando:
<input type="submit" value="enviar" name="enviar">

Campo oculto:
<input type="hidden" name="edad" value="55">

Este ltimo tipo de campo resulta especialmente til cuando queremos pasar datos ocultos en un formulario Como habrs observado todos lo tipos de campo tienen un modificador llamado name, que no es otro que el nombre de la variable con la cual recogeremos los datos en el script indicado. A continuacin veamos un ejemplo, para lo cual crearemos un formulario en HTML como el que sigue y lo llamaremos formprueba.htm:
<html> <body> <form method="post" action="info.php"> <input type="hidden" name="edad" value="25"> <p>Tu nombre <input type="text" name="nombre" size="30" value="Carlos"></p> <p>Tu sistema favorito <select size="1" name="sistema"> <option selected value="Linux">Linux</option> <option value="Unix">Unix</option> <option value="Windows">Windows</option> </select></p> <p>Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p> <p>Cual es tu sexo?</p> <blockquote> <p>Hombre<input type="radio" value="hombre" checked name="sexo"></p> <p>Mujer <input type="radio" name="sexo" value="mujer"></p> </blockquote> <p>Aficiones</p> <p><textarea rows="5" name="aficiones" cols="28"></textarea></p> <p><input type="submit" value="Enviar datos" name="enviar"> <input type="reset" value="Limpiar" name="B2"></p> </form> </body> <html>

Ahora bien creemos el script en php llamado desde le formulario misdatos.php:


<?php iif($enviar) { echo "Hola <b>" . $nombre . "</b> que tal ests<BR>\n"; 4

echo "Eres " . $sexo . "<br>\n"; echo "Tienes " . $edad . "<br>\n"; echo "Tu sistema favorito es " . $sistema . "<BR>\n"; if ($futbol) { echo "Te gusta el futbol <br>\n"; } else { echo "NO te gusta el futbol <br>\n"; } if($aficiones != "") { echo "Tus aficiones son: <br>\n"; echo nl2br($aficiones); } else { echo "No tienes aficiones <br>\n"; } } echo "<a href='formprueba.htm'>volver al formulario</a>" ?>

Desarrollar una aplicacin en PHP que pida el Nombre (textbox), el apellido (textbox), la edad (textbox), domicilio (text area), seleccione el rango de sueldo que le gustara ganar (listbox) y que seleccione como considera as mismo su desempeo laboral(radio button). La aplicacin no aceptar que elijan un sueldo muy bajo, ni un sueldo extremo, ni tampoco si se considera psimo (hojadevida.html y hojadevida.php).
*********************************************************hojadevida.html <html><head></head><body><b>Mi Hoja de Vida </b> <form method=post action='hojadevida.php'> Nombres: <input type ='text' name ='nombres'> Apellidos: <input type=text name =apellidos> Edad: <input type =text name=edad size=3> <br> <br> Domicilio: <textarea name ='' Domicilio" rows=4 cols=40></textarea> <br><br> Que salario deseas ganar? <select name='Salario'> <option value=0> Menos de $1000</option> <option value=1000>Entre $1,000 y $3,000</option> <option value=3000>Entre $3,000 y $5,000</option> <option value=5000>mas de $5,000</option> </select> <br><br> Como consideras tu desempeo?<br><br> <input name="Desempe" type="Radio" value=0>Pesimo <br> <input name="Desempe" type="Radio" value=5>Regular <br> <input name ="Desempe" type="Radio" value=10>Excelente <br><br> <input type=submit value="Presione cuando este listo(a)"> <input type=reset value="Borra todo"> </form> </form> </html> *******************************************************hojadevida.php <?php Echo "Sr(a) $nombres $apellidos en base a su edad $edad y sus aspiraciones <br> econmicas y su auto estimacin hemos determinado que:<br>"; echo "Salario deseado: $Salario <br>" ; echo "Su desempeo elegido: $Desempe <br>"; if((($Salario==0) OR ($Salario ==5000)) OR ($Desempe ==0)) { Echo "Usted no cumple los requisitos para ser parte de nuestra empresa"; } else { Echo "Usted cumple satisfactoriamente nuestras aspiraciones"; } ?>

Das könnte Ihnen auch gefallen