You are on page 1of 41

Ing.

Diana Cruz

Que es el PHP?
El PHP es un lenguaje de programacin utilizado para crear pginas web dinmicas. El PHP necesita que un servidor web con capacidad PHP sea instalado y funcionando para poder ejecutar las pginas PHP. El servidor va a compilar el cdigo PHP y tratarlo en tiempo real, con la informacin viniendo del cliente web, para regresarle una pagina web adaptada, en tiempo real.

Por qu utilizaramos el PHP?


El PHP se necesita cuando la pagina web tiene que adaptarse en funcin del usuario, y cuando se necesita guardar valores de sesin del usuario. Existen otros lenguaje que permiten eso, como el ASP o el JSP, pero el PHP tiene como aventaje que es un lenguaje fcil a aprender. Los servidores PHP (como los servidores JSP) existen para varios sistemas operativos, entre otros Windows, Linux, y Unix.

El protocolo HTTP
El protocolo HTTP (HyperText Transport Protocol) es un protocolo que define en detalle cmo un cliente y un servidor deben comunicar entre ellos. El modelo de comunicacin HTTP es a la base del web. El protocolo se aplica a cualquier servidor y cliente web.

Modelo de consulta / respuesta HTTP


De manera tpica, un cliente enva una consulta para un recurso a un servidor, y el servidor contesta una respuesta que corresponde al recurso preguntado (o contesta con un mensaje de error). El recurso puede ser una pgina HTML, o una aplicacin que contesta con un contenido dinmico.

Modelo de consulta / respuesta HTTP

Este modelo simple implica tres cosas que Usted tiene que ser consciente: 1. El protocolo HTTP es un protocolo sin estado. Es decir que el servidor no guarda informacin acerca del cliente despus de haberle contestado, y por eso no puede reconocer que varias consultas de un mismo cliente pueden ser relacionadas. 2. La aplicacin web no puede entregar una respuesta inmediato, como en aplicaciones locales. La velocidad depende del ancho de banda disponible y de la carga del servidor. 3. No hay nada en el protocolo que indica al servidor como la consulta le ha llegado, as que el servidor no puede distinguir diferente mtodos de consulta. Por ejemplo, en servidor no puede distinguir una consulta generada por un clic en un enlace del uso del botn 'atrs' del navegador. Tambin, como el HTTP es sin estado, no se puede dentro del HTTP llamar a la pgina anterior.

PHP
La sintaxis de PHP es muy parecida a otros lenguajes de programacin como C, JAVA, Perl o, incluso, el lenguaje de script Java Script. PHP proporciona un conjunto de herramientas compactas propias que realzan las interacciones entre los usuarios y las pginas HTML, permitindonos dar servicio a las peticiones ms habituales de una forma sencilla

PHP ofrece las caractersticas bsicas de un lenguaje orientado a objetos. Definicin bsica de clase, objetos y utilizacin de la herencia.

FORMATO DEL CDIGO PHP


DELIMITADORES PHP est muy relacionado con el lenguaje de hipertexto HTML; tanto es as, que el cdigo PHP aparece normalmente insertado dentro de un documento HTML. El documento PHP, una vez interpretado correctamente en el servidor genera una pgina HTML que ser enviada al cliente, como se muestra en el siguiente grfico.

Peticin PHP INTERNET Interpret e PHP BD


Html

Respuesta

Servidor Web

Para diferenciar ambos lenguajes dentro del mismo documento, se utilizan etiquetas de comienzo y final del cdigo PHP. Las etiquetas mas habituales para delimitar cdigo PHP son las siguientes: <?php instrucciones PHP ?>

Extensin de los ficheros en PHP

.php esta extensin ser la utilizada para guardar los programas php.

Funcin echo

Permite mostrar informacin en el cuerpo del documento HTML que ser interpretado por el navegador del cliente

Primer pagina PHP


Guardar el siguiente cdigo en un fichero llamado prueba.php <html> <head><title>prueba php</title></head> <body> <center><img src=php.gif border =0/> <?php echo <h2>El mdulo de php funciona correctamente</h2>; ?> </center> </body> </html>

tambin puede existir codigo que no contenga ninguna etiqueta html <?php echo<center><img src=php.gif border =0>; Echo<h2>el modulo de php funciona correctamente</h2></center>; ?>

Comentarios
En PHP se pueden insertar comentarios de tres formas distintas que tambin son utilizadas en otros lenguajes. // sirve para comentar una nica lnea de cdigo /* sirve para hacer comentarios multilnea, es decir nos permite comentar varias lineas de cdigo fuente, asi que podemos extender nuestros comentarios a mas de una lnea de cdigo.*/

Fin de lnea
PHP ignora cualquier carcter de espaciado presente en el cdigo, incluyendo espacios en blanco, tabuladores y saltos de lnea. Excepto si se encuentran dentro de una cadena de texto. El fin de sentencia se marca en todas las instrucciones con el carcter de punto y coma ; o aprovechando la etiqueta de cierre ?>

SINTAXIS BSICA
VARIABLES En PHP no es necesario declarar las variables antes de su utilizacin. Las variables se crean en el instante que son utilizadas por primera vez. Adems no tienen asociada la naturaleza del tipo de informacin que almacenan (este tipo de lenguajes se denominan dbilmente tipados)

NOMBRADO DE VARIABLES En PHP todos los nombres de variable son precedidos por el smbolo de pesos, $, seguido por una legra o un guion bajo _ para despus continuar con cualquier combinacin de letras Ejemplo: $valor_actual $N $n Cabe destacar que, el interprete PHP distingue entre maysculas y minsculas.

Nmeros en coma flotante


El siguiente cdigo muestra la asignacin de valores de tipo double a una variable en los diferentes formatos numricos que PHP puede manejar para este tipo de datos: Podremos observar luego de hacer el ejemplo puntoflotante.php que la funcin echo muestra por defecto siempre la informacin en decimal, a pesar de que internamente sta se haya almacenado en la variable con un formato distinto.

//ejemplo puntoflotante.php <HTML> <HEAD><TITLE>Variables en coma flotante</title> </head> <body> <center> <h2>formatos de los nmeros en coma flotante</h2> <table border="1" cellpadding="2" cellspacing="2"> <tr align="right"> <td bgcolor="yellow">Estndar</td> <td> <?php $num=2.589; //formato estndar echo $num; //mostramos el valor de $num ?> </td> </tr> <tr align="right"> <td bgcolor="yellow">cientifico (1.5e2)</td> <td> <?php $num = 1.5e2; //formato cientifico echo $num; //mostramos el valor de $num ?> </td> </tr> </table> </center> </body> </html>

Cadenas
Cuando utilizamos comillas dobles, podemos incluir dentro de la cadena nombres de variables que sern evaluados (sustituidos por sus respectivos valores) a la hora de mostrar la informacin. Si introducimos nombres de variables dentro de una cadena encerrada en comillas simples, la variable no ser evaluada.

DIGITAR LAS SIGUIENTES LINEAS DE CODIGO


//Ejemplo cadena de caracteres <HTML> <HEAD><TITLE>Variables con cadenas de caracteres</title> </head> <body> <center> <h2>trabajando con cadenas de caracteres</h2> <?php $lenguaje= "php"; $ver="v4"; echo "<b>estamos 'trabajando' con $lenguaje ($ver)</b><br><br>"; echo 'la variable $lenguaje contiene: '; echo $lenguaje; echo "<br>"; echo 'la variable $ver contiene: '; echo $ver; ?> </center> </body> </html>

EJERCICIOS USANDO SENTENCIAS DE CONTROL

Ejercicio sumaprimeros10num.php Utilizar una sentencia de bucle para imprimir la suma de los 10 primeros nmeros.

<html> <head><title>suma de los 10 primeros numeros</title></head> <body> <center> <?php echo "la suma de los diez primeros numeros es:"; $suma=0; for($i=1; $i<11; $i++) { $suma += $i; echo "$i"; if($i==10) echo "="; else echo "+"; } echo $suma; ?> </center> </body> </html>

Ejercicio numeromayor.php Utilizar una sentencia de control para saber cual es el mayor de un conjunto de tres valores. Mostrar los tres valores a comparar
<HTML> <HEAD><TITLE>Variables en coma flotante</title> </head> <body> <center> <h2>sentencia <i>if</i></h2> <?php $a=3; $b=7; $c=9; echo "<br>los tres numeros a comparar son: "; echo "<b>$a, $b </b> y <b>$c</b><br><br>"; echo "y el mayor es el <b>"; if(($a>$b)&&($a>$c)){ echo $a; } if(($b>$a)&&($b>$c)){ echo $b; } if(($c>$a)&&($c>$b)){ echo $c; } echo "</b>"; ?> </center> </body> </HTML>

Ciclo que imprime los num de 1 a 10 en una tabla


<html> <head><title>ciclo</title></head> <body> <table border=1> <?php while ($num < 11) { ?> <tr><td><?php echo $num; ?></td></tr> <?php $num++;} ?> </table> </body> </html>

Hacer un programa usando php que devuelva el da de la semana en curso. Se debe usar la funcin Date y los das en ingles.
<html> <head><title>dia de hoy</title></head> <body> <center> <?php echo "hoy es <b>"; $dia = date("D"); if ($dia == "Mon"){ echo "lunes"; } elseif ($dia == "Tue"){ echo "Martes"; } elseif ($dia == "Wed"){ echo "Miercoles"; } elseif ($dia == "Thu"){ echo "Jueves"; } elseif ($dia == "Fri"){ echo "Viernes"; } elseif ($dia == "Sat"){ echo "Sabado"; } else{ echo "domingo"; echo "</b>"; } ?> </center> </body> </html>

Otra forma Date


<html> <head><title>dia de hoy</title></head> <body> <center> <? $dia = date("D"); echo $dia ?> </center> </body> </html> Otra forma <html> <head><title>dia de hoy</title></head> <body> <center> <? $dia = date("y-m-d h:i:s"); //Y M D mayscula muestra 2012-09-04 echo $dia ?> </center> </body> </html>

Hacer un programa usando php que calcule el factorial de un numero dado.


<html> <head><title>factorial de un numero dado</title></head> <body> <center> <h2>sentencia for</h2> <?php $numero = 5; echo "<br><b>$numero!</b> = "; $factorial=1; for($i=$numero; $i>=1; $i--) { $factorial *= $i; echo $i; if($i==1) echo "="; else echo "x"; } echo "$factorial"; ?> </body> </center> </html>

Otra forma de factorial


<?php //n! = n * (n - 1)! function factorial ($natural) { $resultado =1; if($natural > 0) { $resultado = $natural * factorial($natural - 1); } return $resultado; } echo factorial(8); ?>

Hacer un programa usando php que muestre una tabla de multiplicar de 10 x 10 elementos. Use for

Hacer un programa usando php que muestre los mltiplos de 3 y 5 comprendidos entre 1 y 1000

Archivo de conexin a un base de datos


<?php $xhost = "localhost"; $xuser = "root"; $xpass = ""; $xdtbs = "colegio"; $link = mysql_connect($xhost, $xuser, $xpass); if(!$link){ echo "No se pudo conectar"; } $dbqq = mysql_select_db($xdtbs, $link); if(!$link){ echo "No se pudo seleccionar la BD"; } ?>

Ejercicio de ingreso de datos a la base de datos (archivo index.php)


<?php require('../connect.php'); ?> <html> <body> <form action='guardar.php' method='POST'><br><table align='center'> <tr><th colspan='2'>ADICIONAR DOCENTE</th></tr> <tr><td>C&eacute;dula</td><td><input type='text' name='cedula' id='cedula'></td></tr> <tr><td>Nombre</td><td><input type='text' name='nombre' id='nombre'></td></tr> <tr><td>Correo Electr&oacute;nico</td><td><input type='text' name='mail' id='mail'></td></tr> <tr><td>Contrase&ntilde;a</td><td><input type='text' name='clave' id='clave'></td></tr> <tr><td>Activo</td><td><select name='activo' id='activo'><option value='Si'>Si</option><option value='No'>No</option></select></td></tr> <tr><td colspan='2' align='right'><input type='submit' value='Adicionar' name='submit'></td></tr> </table></form> <? $qrydoc = mysql_query("SELECT * FROM docente ORDER BY doc_nom"); ?> <table align='center' width='50%' border='1' cellpadding='0' cellspacing='0'> <tr><th colspan='6'>LISTA DE DOCENTES</th></tr> <tr><th>C&eacute;dula</th><th>Nombre</th><th>Correo Electr&oacute;nico</th><th>Activo</th></tr> <? while ($rowdoc = mysql_fetch_array($qrydoc)){ ?> <tr><td><? echo $rowdoc[doc_ced]; ?></td><td><? echo $rowdoc[doc_nom]; ?></td><td><? echo $rowdoc[doc_mail]; ?></td><td align='center'><? echo $rowdoc[activo]; ?></td></tr> <? } ?> </table> </body></html>

Ejercicio de ingreso de datos a la base de datos

Archivo guardar.php
<?php require('../connect.php'); $cedula = $_POST[cedula]; $nombre = $_POST[nombre]; $mail = $_POST[mail]; $clave = $_POST[clave]; $activo = $_POST[activo]; echo "INSERT INTO docente (doc_ced, doc_nom, doc_mail, doc_clave, activo) VALUES ('$cedula','$nombre','$mail','$clave','$activo')"; mysql_query("INSERT INTO docente (doc_ced, doc_nom, doc_mail, doc_clave, activo) VALUES ('$cedula','$nombre','$mail','$clave','$activo')"); ?>

DOCUMENTACIN

Archivo de conexin a un base de datos <?php


$xhost = "localhost"; $xuser = "root"; $xpass = ""; $xdtbs = "colegio"; //conecta con la base de datos colegio $link = mysql_connect($xhost, $xuser, $xpass); /* mysql_connect int mysql_connect(string [hostname] , string [username] , string [password] ); Devuelve: un identificador de conexin, o FALSE en caso de error. sql_connect establece una conexin a un servidor de MySQL. Todos los argumentos son optativos, y si no se especifican, los valores por defecto son (' el localhost', nombre del usuario del usuario que posee el proceso del servidor, la contrasea vaca). */ if(!$link){ echo "No se pudo conectar"; } $dbqq = mysql_select_db($xdtbs, $link); //Con mysql_select_db() , int mysql_select_db(string database_name, int [link_identifier] ); PHP le dice al servidor que en la conexin $link nos queremos conectar a la base de datos if(!$link){ echo "No se pudo seleccionar la BD"; } ?>

<?php //se crea un archivo con el nombre de index.php require('../connect.php'); //../hace referencia a la ruta donde se encuentra el archivo /*Require: Por lo general, todos nuestros script tienen partes de cdigo iguales, las funcines include() y require() nos van ahorrar muchas de estas lineas de cdigo. Ambas funciones hacen una llamada a un determinado fichero pero de dos maneras diferentes, con include(), insertamos lo que contenga el fichero que llamemos de manera literal en nuestro script, mientras que con require(), le decimos que el script necesitar parte de cdigo de se encuentra en el fichero que llama require(). */ ?> <html> <body> <form action='guardar.php' method='POST'><br><table align='center'>//este formulario llama al archivo guardar.php <tr><th colspan='2'>ADICIONAR DOCENTE</th></tr> //tabla con encabezado de 2 columnas <tr><td>C&eacute;dula</td><td><input type='text' name='cedula' id='cedula'></td></tr> <tr><td>Nombre</td><td><input type='text' name='nombre' id='nombre'></td></tr> <tr><td>Correo Electr&oacute;nico</td><td><input type='text' name='mail' id='mail'></td></tr> <tr><td>Contrase&ntilde;a</td><td><input type='text' name='clave' id='clave'></td></tr> <tr><td>Activo</td><td><select name='activo' id='activo'><option value='Si'>Si</option><option value='No'>No</option></select></td></tr> <tr><td colspan='2' align='right'><input type='submit' value='Adicionar' name='submit'></td></tr> </table></form> <? $qrydoc = mysql_query("SELECT * FROM docente ORDER BY doc_nom"); // mysql_query Ejecuta una consulta a la base de datos activa en el servidor asociado al identificador de conexin. mysql_query(), es la que hace el trabajo duro, usando el identificador de la conexin ($link), enva una instruccin SQL al servidor MySQL para que ste la procese. El resultado de sta operacin es almacenado en la variable ?> <table align='center' width='50%' border='1' cellpadding='0' cellspacing='0'> <tr><th colspan='6'>LISTA DE DOCENTES</th></tr> <tr><th>C&eacute;dula</th><th>Nombre</th><th>Correo Electr&oacute;nico</th><th>Activo</th></tr> <? while ($rowdoc = mysql_fetch_array($qrydoc)){ /*mysql_fetch_array array mysql_fetch_array(int result); Devuelve un array con la informacin correspondiente al resultado de una consulta especificado por su identificador o 'false' si ya no hay ms filas. */ ?> <tr><td><? echo $rowdoc[doc_ced]; ?></td><td><? echo $rowdoc[doc_nom]; ?></td><td><? echo $rowdoc[doc_mail]; ?></td><td align='center'><? echo $rowdoc[activo]; ?></td></tr> <? } ?> </table>

You might also like