SlideShare una empresa de Scribd logo
1 de 51
PROGRAMACIÓN DEL
LADO DEL SERVIDOR.
Programación del lado del servidor.




5.1 Introducción al lenguaje.
5.2 Elementos de programación.
5.3 Aplicación.
Programación del lado del servidor.




5.1 Introducción al lenguaje.
5.2 Elementos de programación.
5.3 Aplicación.
Programación del lado del servidor.


Programación en el cliente y en el servidor:
* El browser envía un request (petición).
* El server ejecuta una aplicación que realiza una determinada acción.
* El server envía el resultado de dicha aplicación al cliente conteniendo
código a interpretar por el browser.
* El browser interpreta el código enviado por el server y realiza una
determinada acción.
Procesamiento del lado del servidor.
La programación del lado del cliente tiene
como principal ventaja que la ejecución de la
aplicación se delega al cliente, con lo cual se
evita recargar al servidor de trabajo. El
servidor solo envía el código, y es tarea del
browser interpretarlo. La gran desventaja de
esta opción de programación es que el código
que el server envía es "sensible" a que cosas
puede o no hacer el browser. El mismo código
no va ser muy bien interpretado por algunos
browser usados ya que ellos utilizarían diversas
tecnologías por el lado del cliente.
Procesamiento del lado del servidor.
Programar por el lado del servidor tiene como
gran ventaja que cualquier cosa puede hacerse
sin tener en cuenta el tipo de cliente, ya que la
aplicación se ejecuta en el servidor que es un
ambiente controlado, una vez ejecutada la
aplicación, el resultado que se envía al cliente
puede estar en un formato normalizado que
cualquier cliente puede mostrar. La desventaja
es que el server se sobrecarga de trabajo ya
que además de servir páginas es responsable
de ejecutar aplicaciones.
Procesamiento del lado del servidor.
¿Que es un Servidor Web?
Un servidor Web es un programa que implementa el protocolo HTTP
(Hypertext Transfer Protocol). Este protocolo esta diseñado para transferir lo
que llamamos hipertextos, paginas Web o paginas HTML (Hypertext Markup
Language), textos complejos con enlaces, figuras, formularios, botones y objetos
incrustados como animaciones o reproducciones de sonidos.
Cabe destacar el hecho de que la palabra servidor identifica tanto al
programa como a la maquina en la que dicho programa se ejecuta. Existe por
tanto, cierta ambigüedad en el término, aunque no será difícil diferenciar a
cual de los dos nos referimos en cada caso.
Procesamiento del lado del servidor.
¿Que es un Servidor Web?
Un servidor Web se encarga de mantenerse a la espera de peticiones HTTP
llevada a cabo por un cliente HTTP que solemos conocer como navegador. El
navegador realiza una petición al servidor y este le responde con el contenido
que el cliente solicita. Por ejemplo, al teclear www.google.com en nuestro
navegador, este realiza una petición HTTP al servidor de dicha dirección. El
servidor responde al cliente enviando el código HTML de la página, el cliente,
una vez recibido el código, lo interpreta y lo muestra en pantalla. Como vemos
con este ejemplo, el cliente es el encargado de interpretar el código HTML, es
decir, de mostrar las fuentes, los colores y la disposición de los textos y objetos
de la pagina, el servidor tan solo se limita a transferir el código de la pagina
sin llevar a cabo ninguna interpretación de la misma.
Programación del lado del servidor.
Sobre el servicio Web clásico podemos disponer de aplicaciones Web. Estas
son fragmentos de código que se ejecutan cuando se realizan ciertas peticiones
o respuestas HTTP. Hay que distinguir entre:
Aplicaciones en el lado del cliente: el cliente
Web es el encargado de ejecutarse en la
maquina del usuario. Son las aplicaciones
tipo Javascript, el servidor proporciona el
código de las aplicaciones al cliente y este,
mediante el navegador, las ejecuta. Es
necesario, por tanto, que el cliente disponga
de un navegador con capacidad para
ejecutar aplicaciones (también llamadas
scripts). Normalmente, los navegadores
permiten ejecutar aplicaciones escritas en
lenguaje javascript aunque pueden añadirse
más lenguajes mediante el uso de plugins.

* Aplicaciones en el lado del
servidor: el servidor Web ejecuta la
aplicación; esta, una vez ejecutada,
genera cierto código HTML; el
servidor toma este código recién
creado y lo envía al cliente por medio
del protocolo HTTP.
Procesamiento del lado del servidor.
Las aplicaciones de servidor suelen ser la
opción por la que se opta en la mayoría de las
ocasiones para realizar aplicaciones Web. La
razón es que, al ejecutarse esta en el servidor y
no en la maquina del cliente, este no necesita
ninguna capacidad adicional, cualquier cliente
dotado de un navegador Web básico puede
utilizar este tipo de aplicaciones.

Qué servidores existen?
Algunos servidores conocidos son:
Apache
Internet Information Server (IIS)
Tomcat, un servidor basado en Apache para
estándares de Java (JSP y Servlets)
lighttpd
thttpd
Procesamiento del lado del servidor.
Investigación
Características de los siguientes servidores:
Apache
Internet Information Server (IIS)
Tomcat
Wamp
Conceptos básicos de la herramienta
de desarrollo
En el dominio de la red, los lenguajes de lado servidor
más ampliamente utilizados para el desarrollo de
páginas dinámicas son el ASP, PHP y PERL.
El ASP (Active Server Pages) es un lenguaje derivado del Visual Basic desarrollado
por Microsoft. Evidentemente su empleo se realiza sobre plataformas funcionando
bajo sistema Windows NT.
El PHP podría ser considerado como el lenguaje análogo al ASP utilizado en
plataformas Unix y Linux.
Por otra parte, el PERL es un lenguaje más rápido y potente que requiere
obviamente un aprendizaje más largo y resulta más reservado para personas ya
familiarizadas con la verdadera programación.
5.1 Introducción al lenguaje.
En el dominio de la red, los lenguajes de lado servidor
más ampliamente utilizados para el desarrollo de
páginas dinámicas son el ASP, PHP y PERL.
El ASP (Active Server Pages) es un lenguaje derivado del Visual Basic desarrollado
por Microsoft. Evidentemente su empleo se realiza sobre plataformas funcionando
bajo sistema Windows NT.
El PHP podría ser considerado como el lenguaje análogo al ASP utilizado en
plataformas Unix y Linux.
Por otra parte, el PERL es un lenguaje más rápido y potente que requiere
obviamente un aprendizaje más largo y resulta más reservado para personas ya
familiarizadas con la verdadera programación.
Conceptos básicos de la herramienta
de desarrollo
PHP es lo que llamamos un lenguaje de programacion del lado del servidor, esto
significa que el código se interpreta en el servidor y no en el ordenador del
usuario.
El código php interpretado,
produce un resultado que es
enviado al navegador del
visitante en forma de HTML,
imagen, documento .doc... de
ninguna manera el navegador
del visitante accede al código
fuente en php sino solo a su
resultado en HTML.
Conceptos básicos de la herramienta
de desarrollo
Vamos a ver un ejemplo sencillo de código escrito en php :
<html>
<head>
<title>Prueba</title>
</head>
<body>
<?
$texto = "Hola mundo";
echo $texto;
?>
</body>
</html>

Vemos que el código php esta delimitado por
las etiquetas <? y ?>, aunque también puede
usarse <?php en lugar de <?.
Otra característica del php es que las variables
se identifican con el signo del dolar ($) y que
cada instrucción debe finalizarse con un punto y
coma (;).
Conceptos básicos de la herramienta
de desarrollo
Para que en futuras revisiones a tu código por
tu parte y sobretodo por parte de otros
programadores este código sea inteligible para
la mente humana, es un buen costumbre
comentar lo que se esta haciendo en PHP pero
en palabras.
De esta manera el código será mucho mas
sencillo de comprender y a su vez de modificar,
corregir, ampliar...
Los comentarios que soporta PHP són los de C,
C++ y los del shell de Unix, asi podemos usar
// y /* */ para comentarios y comentarios
multilinea respectivamente como haríamos en C:

<?
echo 'Esto se ve';
// esto no se ve
echo 'esto también se ve';
/* esto tampoco
se ve */
?>
Operadores
En PHP cada vez que se ejecuta un script,
existen variables que se crean y que nos
pueden informar del entorno en el que se está
ejecutando dicho script.
Para obtener una lista de todas estas variables
predefinidas se puede utilizar la funcion
phinfo().
Una variable es un nombre que contiene unos
determinados datos, ya sean de texto o
numéricos, y en php tienen la peculiaridad de ir
precedidas por el signo del dolar ($).

En PHP no es necesario declarar las variables
antes de usarlas y pueden contener texto y
números indiferentemente. Vamos a ver un
ejemplo de uso de variables:

<?
$miVariable = 'Hola ';
$miVariable2 = 33;
// Imprimimos Hola 33
echo $miVariable.$miVaria
ble2;
?>
Operadores
PHP permite un mecanismo para mantener
variables con un nombre no fijo.
Por ejemplo:
$a = "hola";
$$a = "mundo";

El ejemplo anterior, define dos variables, una
denominada $a que contiene el valor "hola" y
otra que se llama $hola que contiene el valor
"mundo"
Para acceder al valor de una variable, se
accede con:
Operadores
Una constante es como una variable pero con la
diferencia que una vez toma un valor este no
puede variar durante la ejecucion del script,
otra particularidad de las constantes es que son
globales, por lo que se pueden leer desde el
interior de una funcion sin tener que pasarlas
como parametro.
Al contrario que las variables, las constantes se
expresan sin signo del dolar ($), y se tienen que
definir usando la funcion define:

<?
define ('miConstante','valor de
mi constante');
echo miConstante;
?>
Operadores
En algunos casos no es posible acceder al valor
de una constante directamente por su nombre,
pues este nombre puede coincidir con el de una
funcion y el resultado producido no sería el
esperado, en ese caso usaremos la funcion
constant para leer el valor de dicha constante:

<?
define ('echo','valor de mi cons
tante');
echo constant('echo');
?>
Operadores
Los tipos de cada variable en PHP no están tan
claros como en C. El intérprete asigna el tipo de
una variable según el uso que se esté haciendo
de ella. Para asignar un tipo fijo a una variable
se utiliza la función settype(). Los tipos son:
Enteros
Flotantes
String
Arrays
Objetos
Juggling
Respecto al tipo entero y flotante, no hay
mucho que decir, así que detallaremos sólo los
tipos String, Arrays, Objetos y Juggling.

<?php
// La variable $var1 es un numero ( entero )
$var1 = 3;
// La variable $var2 es un texto ( cadena de
caracteres )
$var2 = "9 años";
// Si juntamos las variables $var1 y $var2, ob
tenemos un texto
$var3 = $var1 . $var2; // "39 años"
// Si en cambio las sumamos obtendremos un
número
$var3 = $var1 + $var2; // 12 ( 3 + 9)
?>
Operadores
boolean - Lógico
Puede contener 2 valores True o False. Al usarlo cómo entero su valor puede ser 1 ( True
) o 0 ( False ).
Un ejemplo típico de lógico es el resultado de una comparación:
<?php
$var1= 1 != 2 ; // $var1 es true
?>

integer - Entero
Puede contener enteros ( sin decimales ) positivos y negativos, se pueden escribir en
notación octal, decimal y hexadécimal:
<?php
$var1 = 027; // Notación octal ( 23 en decimal )
$var1 = 23; // Notación decimal
$var1 = 0x17; // Notación hexadecimal ( 23 en decimal )
?>
Operadores
float - Decimal
En versiones anteriores a la 4.2.0 de PHP se les llamaba double, contienen números
decimales positivos o negativos. Si lo usamos cómo entero, su valor se redondea a la
baja ( truncamiento ).
string - Cadena de caracteres
Es una lista de caracteres ( letras, cifras, signos... ) en un orden determinado, por
ejemplo "hola mundo". Los representamos delimitados con comillas dobles o simples.
No podemos utilizar el mismo tipo de comillas en el interior de una cadena que para
delimitarla, en este caso le tendremos que poner un  delante para diferenciarla del
final de la cadena, y si se puede confundir,  en lugar de :
<?php
$var1 = 027; // Notación octal ( 23 en decimal )
$var1 = 23; // Notación decimal
$var1 = 0x17; // Notación hexadecimal ( 23 en decimal )
?>
Operadores
Variables.php
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
$a = 1;
$b = 3.34;
$c = "Hola Mundo";
echo $a,"<br>",$b,"<br>",$c;
?>
</body>
</html>
Operadores
Aritméticos
Los operadores de PHP son muy parecidos a los de C y JavaScript, si usted conoce
estos lenguajes le resultaran familiares y fáciles de reconocer.
Estos son los operadores que se pueden aplicar a las variables y constantes numéricas.
Operadores
Opearitmeticos.php

<html>
<head>
<title>Ejemplo de PHP</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>
Operadores
Comparación
Los operadores de comparación son usados
para comparar valores y así poder tomar
decisiones.
Operadores
Opecomparacion.php

<html>
<head>
<title>Ejemplo de PHP</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 >= $c,"<br>";
echo $b <= $c,"<br>";
?>
</body>
</html>
Operadores
Lógicos
Los operadores lógicos son usados para evaluar
varias comparaciones, combinando los posibles
valores de estas.
Operadores
Opecomparacion2.php

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
$a = 8;
$b = 3;
$c = 3;
echo ($a == $b) && ($c > $b),"<br>";
echo ($a == $b) || ($b == $c),"<br>";
echo !($b <= $c),"<br>";
?>
</body>
</html>
Sentencias.
Las sentencias condicionales nos permiten
ejecutar o no ciertas instrucciones dependiendo
del resultado de evaluar una condición. Las más
frecuentes son la instrucción if y la instrucción
switch. La sentencia if ejecuta una serie de
instrucciones u otras dependiendo de la
condición que le pongamos.

<?php
if (condición)
{
Sentencias a ejecutar cuando la
condición es cierta.
}
else
{
Sentecias a ejecutar cuando la
condición es falsa.
}
?>
Sentencias.
La sentencia if ejecuta una serie de instrucciones
u otras dependiendo de la condición que le
pongamos. Probablemente sea la instrucción
más importante en cualquier lenguaje de
programación.
sentenciaif.php

<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>
Sentencias.
Sentencia switch ... case
Con la sentencia switch podemos ejecutar unas
u otras instrucciones dependiendo del valor de
una variable, en el ejemplo anterior,
dependiendo del valor de la variable $posicion
se ejecuta el bloque 1 cuando el valor es
"arriba", el bloque 2 cuando el valor es
"abajo" y el bloque 3 si no es ninguno de los
valores anteriores.

sentenciacswitch.php

<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?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";
}
?>
</body>
</html>
Sentencias.
Bucles
Los bucles nos permiten iterar conjuntos de
instrucciones, es decir repetir la ejecución de
un conjunto de instrucciones mientras se cumpla
una condición.
Sentencia while
<?php
while (condición)
{
intrucciones a ejecutar.
}
?>

Mientras la condición sea
cierta se reiterará la
ejecución de las instrucciones
que están dentro del while.
Sentencias.
sentenciacswhile.php

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
Inicio<BR>
<?php
$i=0;
while ($i<10)
{
echo "El valor de i es ", $i,"<br>";
$i++;
}
?>
Final<BR>
</body>
</html>
Sentencias.
Sentencia for
<?php
for (inicial ; condición ; ejecutar en
iteración)
{
intrucciones a ejecutar.
}
?>

sentenciacsfor.php

<html>
<head>
<title>Ejemplo de
PHP</title>
</head>
<body>
Inicio<BR>
<?php
for($i=0 ; $i<10 ; $i++)
{
echo "El valor de i es ",
$i,"<br>";
}
?>
Final<BR>
</body>
</html>
Arreglos.
Arrays
Los Arrays en PHP se pueden utlizar tanto como Arrays indexados o como Arrays
asociativos. Los Arrays de una sola dirección, pueden ser tanto escalares como asociativos.
En realidad no existen ninguna diferencia entre ellos. Las funciones que se utilizan para
crear Arrays de este tipo son list() o array().
En el caso de que no se especifique el indice en un array, el elemento que se asigna se
añade al final.
Ejemplo:
$a[]="hola"
Arreglos.
La instrucción anterior añade el string hola al final del array 'a'. Los arrays pueden ser
ordenados utilizando las siguientes funciones: asort(), arsort(), ksort(), rsort(), sort(),
uasort(), usort() y uksort().
Otras funciones para el manejo de arrays son: count(), next(), prev() y each().
En PHP, los arrays multidimensionales combinan las propiedades de un array
unidimensional explicados anteriormente. Los indices de un array multidimensional pueden
ser tanto numéricos como asociativos.
(Nota: hay que tener cuidado con la sintaxis de los arrays multidimensionales asociativos
incluidos dentro de una cadena).
Ejemplo de array multidimensional asociativo:
$a=array(
"manzana" => array("color" => "rojo", "tacto" => "suave"),
"naranja" => array("color" => "naranja", "tacto" => "rugoso"),
"platano" => array("color" => "amarillo", "tacto" => "suave")
);
Arreglos.
Las sentencias condicionales nos permiten
ejecutar o no ciertas instrucciones dependiendo
del resultado de evaluar una condición. Las más
frecuentes son la instrucción if y la instrucción
switch. La sentencia if ejecuta una serie de
instrucciones u otras dependiendo de la
condición que le pongamos.

<?php
if (condición)
{
Sentencias a ejecutar cuando la
condición es cierta.
}
else
{
Sentecias a ejecutar cuando la
condición es falsa.
}
?>
Arreglos.
cadenas.php

<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
echo strlen("12345"),"<br>";
$palabras=split(" ","Esto es una prueba");
for($i=0;$palabras[$i];$i++)
echo $palabras[$i],"<br>";
$resultado=sprintf("8x5 = %d <br>",8*5);
echo $resultado,"<br>";
echo substr("Devuelve una subcadena de otra",9,3),"<br><br>";
if (chop("Cadena nn ") == "Cadena")
echo "Iguales<br><br>";
echo strpos("Busca la palabra dentro de la frase", "palabra"),"<br><br>";
echo str_replace("verde","rojo","Un pez de color verde, como verde es la hierba."),"<br>";
?>
</body>
</html>
Funciones y librerías
Una de las herramientas mas importantes en
cualquier lenguaje de programación son las
funciones. Una función consiste en un conjunto de
rutinas y acciones que a lo largo del script van
a ser ejecutadas multitud de veces agrupados
en una FUNCION y desde cualquier punto del
script puede ser llamada y ejecutada. A su vez,
esta función puede recibir parámetros externos
de los cuales dependa el resultado de una
función.
Las funciones deben ser colocadas siempre
antes de realizar la llamada a la función (como
es lógico). La sintaxis de una función es la
siguiente:

function nombre(parámetros){
instrucciones de la función
}
Funciones y librerías
para llamar a la función sería de la siguiente forma: nombre(parámetros)
Un ejemplo para entender el uso de funciones es el siguiente:
Crearemos una función que realice la suma de dos números y muestre el resultado
function sumar($sumando1,$sumando2){
$ suma=$sumando1+$sumando2
echo $sumando1."+".$sumando2."=".$suma;
}
sumar(5,6)
Un hecho relevante que cabe destacar es que las variables que declaremos dentro
de la función solo existirán o tendrán dicho valor dentro de la función.
Existen casos en los cuales no sabemos el número de parámetros que le pasaremos a
la función y en estos casos debemos usar las funciones creadas al efecto como son:
func_num_args() Numero de parámetros que se le han pasado a la función
func_get_args() Devuelve un elemento de los que forman la lista de argumentos
Funciones y librerías
Funciones definidas por el usuario
Una función es un conjunto de instrucciones agrupadas bajo un mismo nombre que
puede ser llamada tantas veces como queramos desde diferentes sitios del
programa, ahorrándonos así la necesidad de escribirlas de nuevo.
Para definir una función se utiliza la siguiente sintaxis:
function nombre_funcion(parametro1, parametro2...)
{
instrucción1;
instrucción2;
instrucción3;
instrucción4;
return valor_de_retorno;
}
Funciones y librerías
En el esquema anterior podemos distinguir varias partes:
la primera línea es la cabecera de la función, que, a su vez, consta de:
la palabra clave function
el nombre de la función que no debe llevar acentos, espacios en blanco, ni
caracteres especiales.
y, encerrada entre paréntesis, la lista de parámetros que consta de una serie
de parámetros separados por comas ','. Los parámetros (o argumentos) son
variables y/o constantes que establecen una "comunicación" entre partes del
código, y que se tratarán como variables locales dentro de la función.
el resto es el cuerpo de la función, que consta de una sucesión de instrucciones
encerradas entre llaves. Cualquier instrucción válida de PHP puede aparecer en el
cuerpo de la función, incluso otras funciones y definiciones de clases.
Si queremos que la función devuelva como resultado algún valor habrá que añadir
una instrucción compuesta por el comando return seguido del valor que será
devuelto por la función.
Funciones y librerías
funciones.php
Procesado de formularios.
Los Formularios no forman parte de PHP, sino del lenguaje estándar de Internet,
HTML. Vamos a dedicar en este capítulo algunas líneas al HTML, para entrar
posteriormente a tratarlos con PHP.
Todo formulario comienza con la etiqueta <FORM ACTION="lo_que_sea.php"
METHOD="post/get"> . Con . 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 recogerlos ( get ). La etiqueta
<FORM> indica el final del formulario.
Procesado de formularios.
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 verificación:
<input type="checkbox" name="cambiar" value="ON">
Botón de opción:
<input type="radio" value="azul" checked name="color">
3.8 Procesado de formularios.
Menú desplegable:
<select size="1" name="dia">
<option selected value="lunes">lunes</option>
<option>martes</option>
<option value="miercoles">miércoles</option>
</select>
Boton 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 habrás 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 por el modificador ACTION de la etiqueta FORM FORM , con value establecemos un
valor por defecto.
<BODY>
<FORM METHOD="post" ACTION=“recibe.php">
<input type="hidden" name="edad" value="55">
<p>Tu nombre <input type="text" name="nombre" size="30"
value="jose"></p>
<p>Tu sistema favorito
<select size="1" name="sistema">
<option selected value="Linux">Linux</option>
<option value="Unix">Unix</option>
Method GET y POST
<option value="Macintosh">Macintosh</option>
En la página anterior hemos<option value=&qmargin-left: 75"><option
comentado que los datos devalue="Windows">Windows</option>
un
</select></p>
formulario se envía mediante el gusta el futbol ? <input type="checkbox" name="futbol"
<p>¿Te
value="si"></p>
método indicado en el atributo
<p>¿Cual
METHOD de la etiqueta FORM, los es tu sexo?</p>
<blockquote>
dos métodos posibles son GET y
<p>Hombre<input type="radio" value="hombre" checked
name="sexo"></p>
POST.
<p>Mujer <input type="radio" name="sexo" value="mujer"></p>
La diferencia entre estos dos
</blockquote>
métodos radica en la forma <p>Aficiones</p>
de
<p><textarea rows="5" name="aficiones"
enviar los datos a la página,
mientras que el método GETcols="28"></textarea></p>
envía
<p><input type="submit" value="Enviar datos" name="enviar">
los datos usando la URL, el método
<input type="res-left: 50"> <input type="reset" value="Restablecer"
name="B2"></p>
POST los envía por la entrada
</FORM>
estándar STDIO.
</BODY>

Procesado de formularios.

Metodopost.htm
Procesado de formularios.
recibe.php

<body>
<?PHP
echo "Hola <b>" . $_POST['nombre'] . "</b> que tal estás<BR>";
echo "Eres " . $_POST['sexo'] . "<BR>";
echo "Tienes " . $_POST['edad'] . "<BR>";
echo "Tu sistema favorito es " . $_POST['sistema'] . "<BR>";
if(isset($_POST['futbol']) && $_POST['futbol'] == "si")
{
echo "Te gusta el futbol <BR>";
}
else
{
echo "No te gusta el futbol <BR>";
}
if ($_POST['aficiones'] != "") {
echo "Tus aficiones son:" . $_POST['aficiones'] . "<BR>";
} else {
echo "NO tienes aficiones <BR>";
}
echo "<a href='formulario.htm'>VOLVER AL FORMULARIO</a>"
?>
</body>
Reporte de practicas
Hacer una pagina web con un menú donde se enlacen todos los archivos que fueron
generados de las practicas.

1. Variables
2. Operadores aritméticos
3. Operadores de comparación 1
4. Operadores de comparación 2
5. Sentencia IF ELSE
6. Sentencia SWITCH
7. Sentencia WHILE
8. Cadenas
9. Funciones
10 Formularos Método POST
Entrega Martes 26 de octubre.

1. Variables.php
2. Opearitmeticos.php
3. Opecomparacion.php
4. Opecomparacion2.php
5. sentenciaif.php
6. sentenciacswitch.php
7. sentenciacswhile.php
8. cadenas.php
9. Funciones.php
10. Metodopost.htm

35 %

Más contenido relacionado

La actualidad más candente

Introduccion a la programacion web
Introduccion a la programacion webIntroduccion a la programacion web
Introduccion a la programacion webRobert Rodriguez
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
Etapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareEtapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareT.I.C
 
modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software Brihany Rossell
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estadosstill01
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosnenyta08
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosJosé Antonio Sandoval Acosta
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a ObjetosRafael Miranda
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascadaaics-1986-13-saraguro
 
La Web, conceptos básicos
La Web, conceptos básicosLa Web, conceptos básicos
La Web, conceptos básicosJeckson Loza
 
Presentacion herramientas CASE
Presentacion herramientas CASEPresentacion herramientas CASE
Presentacion herramientas CASEdavidsande
 

La actualidad más candente (20)

Introduccion a la programacion web
Introduccion a la programacion webIntroduccion a la programacion web
Introduccion a la programacion web
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Tema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de RequisitosTema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de Requisitos
 
Etapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareEtapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del Software
 
Sistemas distribuidos pnn2
Sistemas distribuidos pnn2Sistemas distribuidos pnn2
Sistemas distribuidos pnn2
 
modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estados
 
Tareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
 
Características de MySQL
Características de MySQLCaracterísticas de MySQL
Características de MySQL
 
Html
HtmlHtml
Html
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascada
 
La Web, conceptos básicos
La Web, conceptos básicosLa Web, conceptos básicos
La Web, conceptos básicos
 
Ieee 830
Ieee 830Ieee 830
Ieee 830
 
Presentacion herramientas CASE
Presentacion herramientas CASEPresentacion herramientas CASE
Presentacion herramientas CASE
 
El diseño web
El diseño webEl diseño web
El diseño web
 
Metodología rup
Metodología rupMetodología rup
Metodología rup
 
Proyecto final de software
Proyecto final de softwareProyecto final de software
Proyecto final de software
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 

Destacado

2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado clienteJeremias Morales
 
la historia de los navegadores
la historia de los navegadoresla historia de los navegadores
la historia de los navegadoresSusana Monane
 
Lenguaje de programación de páginas web
Lenguaje de programación de páginas webLenguaje de programación de páginas web
Lenguaje de programación de páginas webalbafa1995
 
Programacion cliente hojas_deestilo_
Programacion cliente hojas_deestilo_Programacion cliente hojas_deestilo_
Programacion cliente hojas_deestilo_claracarrillo
 
Lenguajes del lado del servidor
Lenguajes del lado del servidorLenguajes del lado del servidor
Lenguajes del lado del servidorpidingos
 
índice e historia del internet
índice e historia del internetíndice e historia del internet
índice e historia del internetDaniel Reynaga
 
Lenguajes del lado del servidor y lenguajes del lado del usuario
Lenguajes del lado del servidor y lenguajes del lado del usuarioLenguajes del lado del servidor y lenguajes del lado del usuario
Lenguajes del lado del servidor y lenguajes del lado del usuarioJessica
 
Introdución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLIntrodución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLJoaquín Salvachúa
 
Programación del lado del cliente
Programación del lado del clienteProgramación del lado del cliente
Programación del lado del clienteGabriel Mondragón
 
Historia del internet 1958 2015
Historia del internet 1958 2015Historia del internet 1958 2015
Historia del internet 1958 2015getsemani05
 

Destacado (20)

Programacion web
Programacion webProgramacion web
Programacion web
 
2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente
 
C1 arquitectura.
C1 arquitectura.C1 arquitectura.
C1 arquitectura.
 
Historia del internet
Historia del internetHistoria del internet
Historia del internet
 
Historia de internet y la web
Historia de internet y la webHistoria de internet y la web
Historia de internet y la web
 
Internet
InternetInternet
Internet
 
la historia de los navegadores
la historia de los navegadoresla historia de los navegadores
la historia de los navegadores
 
Lenguaje de programación de páginas web
Lenguaje de programación de páginas webLenguaje de programación de páginas web
Lenguaje de programación de páginas web
 
Plataformas cliente servidor
Plataformas cliente servidorPlataformas cliente servidor
Plataformas cliente servidor
 
Programacion cliente hojas_deestilo_
Programacion cliente hojas_deestilo_Programacion cliente hojas_deestilo_
Programacion cliente hojas_deestilo_
 
Lenguajes del lado del servidor
Lenguajes del lado del servidorLenguajes del lado del servidor
Lenguajes del lado del servidor
 
Tecnologias para el desarrollo Web
Tecnologias para el desarrollo WebTecnologias para el desarrollo Web
Tecnologias para el desarrollo Web
 
índice e historia del internet
índice e historia del internetíndice e historia del internet
índice e historia del internet
 
Lenguajes del lado del servidor y lenguajes del lado del usuario
Lenguajes del lado del servidor y lenguajes del lado del usuarioLenguajes del lado del servidor y lenguajes del lado del usuario
Lenguajes del lado del servidor y lenguajes del lado del usuario
 
Introdución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTMLIntrodución a la web: HTTP, URL y HTML
Introdución a la web: HTTP, URL y HTML
 
Java script
Java scriptJava script
Java script
 
Programación del lado del cliente
Programación del lado del clienteProgramación del lado del cliente
Programación del lado del cliente
 
La evolución de internet
La evolución de internetLa evolución de internet
La evolución de internet
 
Historia del internet 1958 2015
Historia del internet 1958 2015Historia del internet 1958 2015
Historia del internet 1958 2015
 
La historia de internet.
La historia de internet.La historia de internet.
La historia de internet.
 

Similar a Programacion web c5 programacion del lado servidor

Similar a Programacion web c5 programacion del lado servidor (20)

Servidores web
Servidores webServidores web
Servidores web
 
Servidores web
Servidores webServidores web
Servidores web
 
PHP IUTE
PHP IUTEPHP IUTE
PHP IUTE
 
13 servidor http
13 servidor http13 servidor http
13 servidor http
 
Exposición 8
Exposición 8Exposición 8
Exposición 8
 
Servidor PHP
Servidor PHPServidor PHP
Servidor PHP
 
Servidor PHP
Servidor PHPServidor PHP
Servidor PHP
 
Php tema 4
Php tema 4Php tema 4
Php tema 4
 
Programacion - Php
Programacion - PhpProgramacion - Php
Programacion - Php
 
Manual php
Manual phpManual php
Manual php
 
Apuntes materia entorno cliente servidor
Apuntes materia entorno cliente servidorApuntes materia entorno cliente servidor
Apuntes materia entorno cliente servidor
 
Trabajo especial (php)
Trabajo especial (php)Trabajo especial (php)
Trabajo especial (php)
 
Trabajo especial copy
Trabajo especial   copyTrabajo especial   copy
Trabajo especial copy
 
13.servidor http
13.servidor http13.servidor http
13.servidor http
 
Curso introduccionphp sql
Curso introduccionphp sqlCurso introduccionphp sql
Curso introduccionphp sql
 
Guiacursophp sql
Guiacursophp sqlGuiacursophp sql
Guiacursophp sql
 
Introducción a programación con PHP
Introducción a programación con PHPIntroducción a programación con PHP
Introducción a programación con PHP
 
Php adsi 2013 sena
Php adsi 2013 senaPhp adsi 2013 sena
Php adsi 2013 sena
 
M1 introduccion a php
M1   introduccion a phpM1   introduccion a php
M1 introduccion a php
 
Apache
ApacheApache
Apache
 

Más de Alejandro Hernandez (6)

C3 lenguaje de presentación.
C3 lenguaje de presentación.C3 lenguaje de presentación.
C3 lenguaje de presentación.
 
C2 lenguaje html
C2 lenguaje htmlC2 lenguaje html
C2 lenguaje html
 
Cmmi
CmmiCmmi
Cmmi
 
Cmm
CmmCmm
Cmm
 
Moprosoft
MoprosoftMoprosoft
Moprosoft
 
Moprosoft
MoprosoftMoprosoft
Moprosoft
 

Último

SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativafiorelachuctaya2
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Baker Publishing Company
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxMapyMerma1
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaJuan Carlos Fonseca Mata
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 

Último (20)

SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
plan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativaplan-de-trabajo-colegiado en una institucion educativa
plan-de-trabajo-colegiado en una institucion educativa
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptx
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - Botánica
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 

Programacion web c5 programacion del lado servidor

  • 2. Programación del lado del servidor.    5.1 Introducción al lenguaje. 5.2 Elementos de programación. 5.3 Aplicación.
  • 3. Programación del lado del servidor.    5.1 Introducción al lenguaje. 5.2 Elementos de programación. 5.3 Aplicación.
  • 4. Programación del lado del servidor.  Programación en el cliente y en el servidor: * El browser envía un request (petición). * El server ejecuta una aplicación que realiza una determinada acción. * El server envía el resultado de dicha aplicación al cliente conteniendo código a interpretar por el browser. * El browser interpreta el código enviado por el server y realiza una determinada acción.
  • 5. Procesamiento del lado del servidor. La programación del lado del cliente tiene como principal ventaja que la ejecución de la aplicación se delega al cliente, con lo cual se evita recargar al servidor de trabajo. El servidor solo envía el código, y es tarea del browser interpretarlo. La gran desventaja de esta opción de programación es que el código que el server envía es "sensible" a que cosas puede o no hacer el browser. El mismo código no va ser muy bien interpretado por algunos browser usados ya que ellos utilizarían diversas tecnologías por el lado del cliente.
  • 6. Procesamiento del lado del servidor. Programar por el lado del servidor tiene como gran ventaja que cualquier cosa puede hacerse sin tener en cuenta el tipo de cliente, ya que la aplicación se ejecuta en el servidor que es un ambiente controlado, una vez ejecutada la aplicación, el resultado que se envía al cliente puede estar en un formato normalizado que cualquier cliente puede mostrar. La desventaja es que el server se sobrecarga de trabajo ya que además de servir páginas es responsable de ejecutar aplicaciones.
  • 7. Procesamiento del lado del servidor. ¿Que es un Servidor Web? Un servidor Web es un programa que implementa el protocolo HTTP (Hypertext Transfer Protocol). Este protocolo esta diseñado para transferir lo que llamamos hipertextos, paginas Web o paginas HTML (Hypertext Markup Language), textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproducciones de sonidos. Cabe destacar el hecho de que la palabra servidor identifica tanto al programa como a la maquina en la que dicho programa se ejecuta. Existe por tanto, cierta ambigüedad en el término, aunque no será difícil diferenciar a cual de los dos nos referimos en cada caso.
  • 8. Procesamiento del lado del servidor. ¿Que es un Servidor Web? Un servidor Web se encarga de mantenerse a la espera de peticiones HTTP llevada a cabo por un cliente HTTP que solemos conocer como navegador. El navegador realiza una petición al servidor y este le responde con el contenido que el cliente solicita. Por ejemplo, al teclear www.google.com en nuestro navegador, este realiza una petición HTTP al servidor de dicha dirección. El servidor responde al cliente enviando el código HTML de la página, el cliente, una vez recibido el código, lo interpreta y lo muestra en pantalla. Como vemos con este ejemplo, el cliente es el encargado de interpretar el código HTML, es decir, de mostrar las fuentes, los colores y la disposición de los textos y objetos de la pagina, el servidor tan solo se limita a transferir el código de la pagina sin llevar a cabo ninguna interpretación de la misma.
  • 9. Programación del lado del servidor. Sobre el servicio Web clásico podemos disponer de aplicaciones Web. Estas son fragmentos de código que se ejecutan cuando se realizan ciertas peticiones o respuestas HTTP. Hay que distinguir entre: Aplicaciones en el lado del cliente: el cliente Web es el encargado de ejecutarse en la maquina del usuario. Son las aplicaciones tipo Javascript, el servidor proporciona el código de las aplicaciones al cliente y este, mediante el navegador, las ejecuta. Es necesario, por tanto, que el cliente disponga de un navegador con capacidad para ejecutar aplicaciones (también llamadas scripts). Normalmente, los navegadores permiten ejecutar aplicaciones escritas en lenguaje javascript aunque pueden añadirse más lenguajes mediante el uso de plugins. * Aplicaciones en el lado del servidor: el servidor Web ejecuta la aplicación; esta, una vez ejecutada, genera cierto código HTML; el servidor toma este código recién creado y lo envía al cliente por medio del protocolo HTTP.
  • 10. Procesamiento del lado del servidor. Las aplicaciones de servidor suelen ser la opción por la que se opta en la mayoría de las ocasiones para realizar aplicaciones Web. La razón es que, al ejecutarse esta en el servidor y no en la maquina del cliente, este no necesita ninguna capacidad adicional, cualquier cliente dotado de un navegador Web básico puede utilizar este tipo de aplicaciones. Qué servidores existen? Algunos servidores conocidos son: Apache Internet Information Server (IIS) Tomcat, un servidor basado en Apache para estándares de Java (JSP y Servlets) lighttpd thttpd
  • 11. Procesamiento del lado del servidor. Investigación Características de los siguientes servidores: Apache Internet Information Server (IIS) Tomcat Wamp
  • 12. Conceptos básicos de la herramienta de desarrollo En el dominio de la red, los lenguajes de lado servidor más ampliamente utilizados para el desarrollo de páginas dinámicas son el ASP, PHP y PERL. El ASP (Active Server Pages) es un lenguaje derivado del Visual Basic desarrollado por Microsoft. Evidentemente su empleo se realiza sobre plataformas funcionando bajo sistema Windows NT. El PHP podría ser considerado como el lenguaje análogo al ASP utilizado en plataformas Unix y Linux. Por otra parte, el PERL es un lenguaje más rápido y potente que requiere obviamente un aprendizaje más largo y resulta más reservado para personas ya familiarizadas con la verdadera programación.
  • 13. 5.1 Introducción al lenguaje. En el dominio de la red, los lenguajes de lado servidor más ampliamente utilizados para el desarrollo de páginas dinámicas son el ASP, PHP y PERL. El ASP (Active Server Pages) es un lenguaje derivado del Visual Basic desarrollado por Microsoft. Evidentemente su empleo se realiza sobre plataformas funcionando bajo sistema Windows NT. El PHP podría ser considerado como el lenguaje análogo al ASP utilizado en plataformas Unix y Linux. Por otra parte, el PERL es un lenguaje más rápido y potente que requiere obviamente un aprendizaje más largo y resulta más reservado para personas ya familiarizadas con la verdadera programación.
  • 14. Conceptos básicos de la herramienta de desarrollo PHP es lo que llamamos un lenguaje de programacion del lado del servidor, esto significa que el código se interpreta en el servidor y no en el ordenador del usuario. El código php interpretado, produce un resultado que es enviado al navegador del visitante en forma de HTML, imagen, documento .doc... de ninguna manera el navegador del visitante accede al código fuente en php sino solo a su resultado en HTML.
  • 15. Conceptos básicos de la herramienta de desarrollo Vamos a ver un ejemplo sencillo de código escrito en php : <html> <head> <title>Prueba</title> </head> <body> <? $texto = "Hola mundo"; echo $texto; ?> </body> </html> Vemos que el código php esta delimitado por las etiquetas <? y ?>, aunque también puede usarse <?php en lugar de <?. Otra característica del php es que las variables se identifican con el signo del dolar ($) y que cada instrucción debe finalizarse con un punto y coma (;).
  • 16. Conceptos básicos de la herramienta de desarrollo Para que en futuras revisiones a tu código por tu parte y sobretodo por parte de otros programadores este código sea inteligible para la mente humana, es un buen costumbre comentar lo que se esta haciendo en PHP pero en palabras. De esta manera el código será mucho mas sencillo de comprender y a su vez de modificar, corregir, ampliar... Los comentarios que soporta PHP són los de C, C++ y los del shell de Unix, asi podemos usar // y /* */ para comentarios y comentarios multilinea respectivamente como haríamos en C: <? echo 'Esto se ve'; // esto no se ve echo 'esto también se ve'; /* esto tampoco se ve */ ?>
  • 17. Operadores En PHP cada vez que se ejecuta un script, existen variables que se crean y que nos pueden informar del entorno en el que se está ejecutando dicho script. Para obtener una lista de todas estas variables predefinidas se puede utilizar la funcion phinfo(). Una variable es un nombre que contiene unos determinados datos, ya sean de texto o numéricos, y en php tienen la peculiaridad de ir precedidas por el signo del dolar ($). En PHP no es necesario declarar las variables antes de usarlas y pueden contener texto y números indiferentemente. Vamos a ver un ejemplo de uso de variables: <? $miVariable = 'Hola '; $miVariable2 = 33; // Imprimimos Hola 33 echo $miVariable.$miVaria ble2; ?>
  • 18. Operadores PHP permite un mecanismo para mantener variables con un nombre no fijo. Por ejemplo: $a = "hola"; $$a = "mundo"; El ejemplo anterior, define dos variables, una denominada $a que contiene el valor "hola" y otra que se llama $hola que contiene el valor "mundo" Para acceder al valor de una variable, se accede con:
  • 19. Operadores Una constante es como una variable pero con la diferencia que una vez toma un valor este no puede variar durante la ejecucion del script, otra particularidad de las constantes es que son globales, por lo que se pueden leer desde el interior de una funcion sin tener que pasarlas como parametro. Al contrario que las variables, las constantes se expresan sin signo del dolar ($), y se tienen que definir usando la funcion define: <? define ('miConstante','valor de mi constante'); echo miConstante; ?>
  • 20. Operadores En algunos casos no es posible acceder al valor de una constante directamente por su nombre, pues este nombre puede coincidir con el de una funcion y el resultado producido no sería el esperado, en ese caso usaremos la funcion constant para leer el valor de dicha constante: <? define ('echo','valor de mi cons tante'); echo constant('echo'); ?>
  • 21. Operadores Los tipos de cada variable en PHP no están tan claros como en C. El intérprete asigna el tipo de una variable según el uso que se esté haciendo de ella. Para asignar un tipo fijo a una variable se utiliza la función settype(). Los tipos son: Enteros Flotantes String Arrays Objetos Juggling Respecto al tipo entero y flotante, no hay mucho que decir, así que detallaremos sólo los tipos String, Arrays, Objetos y Juggling. <?php // La variable $var1 es un numero ( entero ) $var1 = 3; // La variable $var2 es un texto ( cadena de caracteres ) $var2 = "9 años"; // Si juntamos las variables $var1 y $var2, ob tenemos un texto $var3 = $var1 . $var2; // "39 años" // Si en cambio las sumamos obtendremos un número $var3 = $var1 + $var2; // 12 ( 3 + 9) ?>
  • 22. Operadores boolean - Lógico Puede contener 2 valores True o False. Al usarlo cómo entero su valor puede ser 1 ( True ) o 0 ( False ). Un ejemplo típico de lógico es el resultado de una comparación: <?php $var1= 1 != 2 ; // $var1 es true ?> integer - Entero Puede contener enteros ( sin decimales ) positivos y negativos, se pueden escribir en notación octal, decimal y hexadécimal: <?php $var1 = 027; // Notación octal ( 23 en decimal ) $var1 = 23; // Notación decimal $var1 = 0x17; // Notación hexadecimal ( 23 en decimal ) ?>
  • 23. Operadores float - Decimal En versiones anteriores a la 4.2.0 de PHP se les llamaba double, contienen números decimales positivos o negativos. Si lo usamos cómo entero, su valor se redondea a la baja ( truncamiento ). string - Cadena de caracteres Es una lista de caracteres ( letras, cifras, signos... ) en un orden determinado, por ejemplo "hola mundo". Los representamos delimitados con comillas dobles o simples. No podemos utilizar el mismo tipo de comillas en el interior de una cadena que para delimitarla, en este caso le tendremos que poner un delante para diferenciarla del final de la cadena, y si se puede confundir, en lugar de : <?php $var1 = 027; // Notación octal ( 23 en decimal ) $var1 = 23; // Notación decimal $var1 = 0x17; // Notación hexadecimal ( 23 en decimal ) ?>
  • 24. Operadores Variables.php <html> <head> <title>Ejemplo de PHP</title> </head> <body> <?php $a = 1; $b = 3.34; $c = "Hola Mundo"; echo $a,"<br>",$b,"<br>",$c; ?> </body> </html>
  • 25. Operadores Aritméticos Los operadores de PHP son muy parecidos a los de C y JavaScript, si usted conoce estos lenguajes le resultaran familiares y fáciles de reconocer. Estos son los operadores que se pueden aplicar a las variables y constantes numéricas.
  • 26. Operadores Opearitmeticos.php <html> <head> <title>Ejemplo de PHP</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>
  • 27. Operadores Comparación Los operadores de comparación son usados para comparar valores y así poder tomar decisiones.
  • 28. Operadores Opecomparacion.php <html> <head> <title>Ejemplo de PHP</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 >= $c,"<br>"; echo $b <= $c,"<br>"; ?> </body> </html>
  • 29. Operadores Lógicos Los operadores lógicos son usados para evaluar varias comparaciones, combinando los posibles valores de estas.
  • 30. Operadores Opecomparacion2.php <html> <head> <title>Ejemplo de PHP</title> </head> <body> <?php $a = 8; $b = 3; $c = 3; echo ($a == $b) && ($c > $b),"<br>"; echo ($a == $b) || ($b == $c),"<br>"; echo !($b <= $c),"<br>"; ?> </body> </html>
  • 31. Sentencias. Las sentencias condicionales nos permiten ejecutar o no ciertas instrucciones dependiendo del resultado de evaluar una condición. Las más frecuentes son la instrucción if y la instrucción switch. La sentencia if ejecuta una serie de instrucciones u otras dependiendo de la condición que le pongamos. <?php if (condición) { Sentencias a ejecutar cuando la condición es cierta. } else { Sentecias a ejecutar cuando la condición es falsa. } ?>
  • 32. Sentencias. La sentencia if ejecuta una serie de instrucciones u otras dependiendo de la condición que le pongamos. Probablemente sea la instrucción más importante en cualquier lenguaje de programación. sentenciaif.php <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>
  • 33. Sentencias. Sentencia switch ... case Con la sentencia switch podemos ejecutar unas u otras instrucciones dependiendo del valor de una variable, en el ejemplo anterior, dependiendo del valor de la variable $posicion se ejecuta el bloque 1 cuando el valor es "arriba", el bloque 2 cuando el valor es "abajo" y el bloque 3 si no es ninguno de los valores anteriores. sentenciacswitch.php <head> <title>Ejemplo de PHP</title> </head> <body> <?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"; } ?> </body> </html>
  • 34. Sentencias. Bucles Los bucles nos permiten iterar conjuntos de instrucciones, es decir repetir la ejecución de un conjunto de instrucciones mientras se cumpla una condición. Sentencia while <?php while (condición) { intrucciones a ejecutar. } ?> Mientras la condición sea cierta se reiterará la ejecución de las instrucciones que están dentro del while.
  • 35. Sentencias. sentenciacswhile.php <html> <head> <title>Ejemplo de PHP</title> </head> <body> Inicio<BR> <?php $i=0; while ($i<10) { echo "El valor de i es ", $i,"<br>"; $i++; } ?> Final<BR> </body> </html>
  • 36. Sentencias. Sentencia for <?php for (inicial ; condición ; ejecutar en iteración) { intrucciones a ejecutar. } ?> sentenciacsfor.php <html> <head> <title>Ejemplo de PHP</title> </head> <body> Inicio<BR> <?php for($i=0 ; $i<10 ; $i++) { echo "El valor de i es ", $i,"<br>"; } ?> Final<BR> </body> </html>
  • 37. Arreglos. Arrays Los Arrays en PHP se pueden utlizar tanto como Arrays indexados o como Arrays asociativos. Los Arrays de una sola dirección, pueden ser tanto escalares como asociativos. En realidad no existen ninguna diferencia entre ellos. Las funciones que se utilizan para crear Arrays de este tipo son list() o array(). En el caso de que no se especifique el indice en un array, el elemento que se asigna se añade al final. Ejemplo: $a[]="hola"
  • 38. Arreglos. La instrucción anterior añade el string hola al final del array 'a'. Los arrays pueden ser ordenados utilizando las siguientes funciones: asort(), arsort(), ksort(), rsort(), sort(), uasort(), usort() y uksort(). Otras funciones para el manejo de arrays son: count(), next(), prev() y each(). En PHP, los arrays multidimensionales combinan las propiedades de un array unidimensional explicados anteriormente. Los indices de un array multidimensional pueden ser tanto numéricos como asociativos. (Nota: hay que tener cuidado con la sintaxis de los arrays multidimensionales asociativos incluidos dentro de una cadena). Ejemplo de array multidimensional asociativo: $a=array( "manzana" => array("color" => "rojo", "tacto" => "suave"), "naranja" => array("color" => "naranja", "tacto" => "rugoso"), "platano" => array("color" => "amarillo", "tacto" => "suave") );
  • 39. Arreglos. Las sentencias condicionales nos permiten ejecutar o no ciertas instrucciones dependiendo del resultado de evaluar una condición. Las más frecuentes son la instrucción if y la instrucción switch. La sentencia if ejecuta una serie de instrucciones u otras dependiendo de la condición que le pongamos. <?php if (condición) { Sentencias a ejecutar cuando la condición es cierta. } else { Sentecias a ejecutar cuando la condición es falsa. } ?>
  • 40. Arreglos. cadenas.php <html> <head> <title>Ejemplo de PHP</title> </head> <body> <?php echo strlen("12345"),"<br>"; $palabras=split(" ","Esto es una prueba"); for($i=0;$palabras[$i];$i++) echo $palabras[$i],"<br>"; $resultado=sprintf("8x5 = %d <br>",8*5); echo $resultado,"<br>"; echo substr("Devuelve una subcadena de otra",9,3),"<br><br>"; if (chop("Cadena nn ") == "Cadena") echo "Iguales<br><br>"; echo strpos("Busca la palabra dentro de la frase", "palabra"),"<br><br>"; echo str_replace("verde","rojo","Un pez de color verde, como verde es la hierba."),"<br>"; ?> </body> </html>
  • 41. Funciones y librerías Una de las herramientas mas importantes en cualquier lenguaje de programación son las funciones. Una función consiste en un conjunto de rutinas y acciones que a lo largo del script van a ser ejecutadas multitud de veces agrupados en una FUNCION y desde cualquier punto del script puede ser llamada y ejecutada. A su vez, esta función puede recibir parámetros externos de los cuales dependa el resultado de una función. Las funciones deben ser colocadas siempre antes de realizar la llamada a la función (como es lógico). La sintaxis de una función es la siguiente: function nombre(parámetros){ instrucciones de la función }
  • 42. Funciones y librerías para llamar a la función sería de la siguiente forma: nombre(parámetros) Un ejemplo para entender el uso de funciones es el siguiente: Crearemos una función que realice la suma de dos números y muestre el resultado function sumar($sumando1,$sumando2){ $ suma=$sumando1+$sumando2 echo $sumando1."+".$sumando2."=".$suma; } sumar(5,6) Un hecho relevante que cabe destacar es que las variables que declaremos dentro de la función solo existirán o tendrán dicho valor dentro de la función. Existen casos en los cuales no sabemos el número de parámetros que le pasaremos a la función y en estos casos debemos usar las funciones creadas al efecto como son: func_num_args() Numero de parámetros que se le han pasado a la función func_get_args() Devuelve un elemento de los que forman la lista de argumentos
  • 43. Funciones y librerías Funciones definidas por el usuario Una función es un conjunto de instrucciones agrupadas bajo un mismo nombre que puede ser llamada tantas veces como queramos desde diferentes sitios del programa, ahorrándonos así la necesidad de escribirlas de nuevo. Para definir una función se utiliza la siguiente sintaxis: function nombre_funcion(parametro1, parametro2...) { instrucción1; instrucción2; instrucción3; instrucción4; return valor_de_retorno; }
  • 44. Funciones y librerías En el esquema anterior podemos distinguir varias partes: la primera línea es la cabecera de la función, que, a su vez, consta de: la palabra clave function el nombre de la función que no debe llevar acentos, espacios en blanco, ni caracteres especiales. y, encerrada entre paréntesis, la lista de parámetros que consta de una serie de parámetros separados por comas ','. Los parámetros (o argumentos) son variables y/o constantes que establecen una "comunicación" entre partes del código, y que se tratarán como variables locales dentro de la función. el resto es el cuerpo de la función, que consta de una sucesión de instrucciones encerradas entre llaves. Cualquier instrucción válida de PHP puede aparecer en el cuerpo de la función, incluso otras funciones y definiciones de clases. Si queremos que la función devuelva como resultado algún valor habrá que añadir una instrucción compuesta por el comando return seguido del valor que será devuelto por la función.
  • 46. Procesado de formularios. Los Formularios no forman parte de PHP, sino del lenguaje estándar de Internet, HTML. Vamos a dedicar en este capítulo algunas líneas al HTML, para entrar posteriormente a tratarlos con PHP. Todo formulario comienza con la etiqueta <FORM ACTION="lo_que_sea.php" METHOD="post/get"> . Con . 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 recogerlos ( get ). La etiqueta <FORM> indica el final del formulario.
  • 47. Procesado de formularios. 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 verificación: <input type="checkbox" name="cambiar" value="ON"> Botón de opción: <input type="radio" value="azul" checked name="color">
  • 48. 3.8 Procesado de formularios. Menú desplegable: <select size="1" name="dia"> <option selected value="lunes">lunes</option> <option>martes</option> <option value="miercoles">miércoles</option> </select> Boton 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 habrás 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 por el modificador ACTION de la etiqueta FORM FORM , con value establecemos un valor por defecto.
  • 49. <BODY> <FORM METHOD="post" ACTION=“recibe.php"> <input type="hidden" name="edad" value="55"> <p>Tu nombre <input type="text" name="nombre" size="30" value="jose"></p> <p>Tu sistema favorito <select size="1" name="sistema"> <option selected value="Linux">Linux</option> <option value="Unix">Unix</option> Method GET y POST <option value="Macintosh">Macintosh</option> En la página anterior hemos<option value=&qmargin-left: 75"><option comentado que los datos devalue="Windows">Windows</option> un </select></p> formulario se envía mediante el gusta el futbol ? <input type="checkbox" name="futbol" <p>¿Te value="si"></p> método indicado en el atributo <p>¿Cual METHOD de la etiqueta FORM, los es tu sexo?</p> <blockquote> dos métodos posibles son GET y <p>Hombre<input type="radio" value="hombre" checked name="sexo"></p> POST. <p>Mujer <input type="radio" name="sexo" value="mujer"></p> La diferencia entre estos dos </blockquote> métodos radica en la forma <p>Aficiones</p> de <p><textarea rows="5" name="aficiones" enviar los datos a la página, mientras que el método GETcols="28"></textarea></p> envía <p><input type="submit" value="Enviar datos" name="enviar"> los datos usando la URL, el método <input type="res-left: 50"> <input type="reset" value="Restablecer" name="B2"></p> POST los envía por la entrada </FORM> estándar STDIO. </BODY> Procesado de formularios. Metodopost.htm
  • 50. Procesado de formularios. recibe.php <body> <?PHP echo "Hola <b>" . $_POST['nombre'] . "</b> que tal estás<BR>"; echo "Eres " . $_POST['sexo'] . "<BR>"; echo "Tienes " . $_POST['edad'] . "<BR>"; echo "Tu sistema favorito es " . $_POST['sistema'] . "<BR>"; if(isset($_POST['futbol']) && $_POST['futbol'] == "si") { echo "Te gusta el futbol <BR>"; } else { echo "No te gusta el futbol <BR>"; } if ($_POST['aficiones'] != "") { echo "Tus aficiones son:" . $_POST['aficiones'] . "<BR>"; } else { echo "NO tienes aficiones <BR>"; } echo "<a href='formulario.htm'>VOLVER AL FORMULARIO</a>" ?> </body>
  • 51. Reporte de practicas Hacer una pagina web con un menú donde se enlacen todos los archivos que fueron generados de las practicas. 1. Variables 2. Operadores aritméticos 3. Operadores de comparación 1 4. Operadores de comparación 2 5. Sentencia IF ELSE 6. Sentencia SWITCH 7. Sentencia WHILE 8. Cadenas 9. Funciones 10 Formularos Método POST Entrega Martes 26 de octubre. 1. Variables.php 2. Opearitmeticos.php 3. Opecomparacion.php 4. Opecomparacion2.php 5. sentenciaif.php 6. sentenciacswitch.php 7. sentenciacswhile.php 8. cadenas.php 9. Funciones.php 10. Metodopost.htm 35 %