con HTML
La instrucciรณn
instrucciรณn
IF
Fer While
Arrays
Para ejecutar páginas PHP es necesario tener instalado un servidor Web ya que todas las páginas se ejecutan en un servidor a diferencia de las páginas HTML que no lo necesitan. El servidor Web más utilizado para PHP es el APACHE y se puede instalar en el mismo Windows. Usted puede bajar de Internet el servidor XAMPP con el cual tendrá acce so a la base de datos MySQL que se utiliza mas en este libro, el servidor Web Apache y los interpretes para lenguajes: PHP y Peri.
El nombre del Servidor XAMPP proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), MySQL, Peri.
Puede buscarlo en la Web de la
manera:
la Web
Después de buscarlo:
según el sistema ope
170
Para el ejemplo se ha la unidad
uo:101Jtv
10
de XAMPP para Windows XP en
171
Desarrollo web
xamppwin321. 6. 3ainstaller, ...
Al hacer doble clic en el nombre programa se inicia la instalación del Servidor: En la primera ventana debe el idioma a utilizar. Se leccion predeterminado:
La siguiente ventana es una bienvenida al asistente de instalación de XAM PP. Haga clic en el botón Next para continuar.
172
CJ Install C Install
Apache as servke
[J Install
MySQL as service Filezilla as servĂce
5ee elso che >Â~AMPP
hacer
la 74
for
INindeiws FAQPaqe
AJ hacer
la ,..,,... ............... de
muestra control del ,..,,,..,..,.,,,...,,...,,..
Windows
XAMPP Control Panel
Para activar el servidor Apache y poder ejecutar pรกginas PHP ingrese al del control de y clic en el
75
Desarrollo
'Windows Cui::rent Directory: Install Directory: Status Check OR
2 Senrice
Pacl!: 2
c:\xampp c:\xampp
Al clic en el botón Start el páginas PHP.
úJindows Cu.zz erit; Dii::ectory: e: \xs.mpp Install Dii::ecteory: c : \xa.mpp Status Check OR Busy. _ Apache service stai::ted
76
para las
2
Service Pack
Las ...,,.,,....,,.,, . . ,.,,,cxampp\htdocs.
forbidden
Carpeta de archivos
restrícted
Carpeta de archivos Carpeta de archivos
01/08/2008 11 :43 p .. '
apache J)b2. gif ap.:iche_pb2.png apache ...Pb2 _.:mi. qif
3 KB
Imagen 1::;IF
01/12/200503:34
2 KB
Imaqen PNG
01/12/2005 03:34 p .
3 KB
Imagen GIF
01¡'12,12005 03:34 p .. '
apache _ _pb. gif
3 i<B
Im.::igen GIF
01/12/2005 03:34 p ...
.1pacheJ)h. pn')
2 KB
Imagen PNG
01/12/2005
Icono
16/05/2007 02:07 p .. '
1 KB
HTML Document
04/12/2005 09:54 p .. '
1 KB
Archivo PHP
03/lZ/2005 12:06 p ...
xarnpp
favícon.íco
31 K6
p .
03:34 p.,;
177
Desarrollo
rear
web con PHP""'
rogramas en
Todo programa en PHP tiene una estructura con etiquetas que indican su inicio y final dentro de las cuales se escriben las instrucciones. Las estructuras pueden ser las siguientes:
?> <scrípt language=t'php">
Estas mismas estructuras se utilizan cuando deseamos puro '"''"' . . ... . . PHP o cuando deben ir dentro de un documento HTML como se explica mas adelante.
'V
Esta instrucción se utiliza cuando deseamos mostrar un de una o una 178
m<::>ln<~·::i
con
Para mostrar mensajes
se utiliza la siguiente sintaxis: echo · '"'""'"'"'....,'"'
Como se puede observar todo mensaje que se desea mostrar debe ir entre comillas y toda PHP termina en y coma
El siguiente programa PHP de
a
a
?> Al igual que en HTML no se ejecuta en forma automática un Las instrucciones muestran el en una sola que se han escrito en tres líneas
<?php echo "PHPn; ?> El resultado será:
Hola a TodosBienvenidos a Si necesitamos ordenar un salto de línea se puede concatenar al texto la etiqueta de HTML <BR> o <P>. El operador de concatenación de PHP es un punto (.)como se muestra en el siguiente ejemplo:
179
<?php ."<br>"·
echo "Hola a echo "Bienvenidos
a ."<br>"; 11
echo "PHP"; ?> El resultado será: Hola a Todos Bienvenidos a PHP
Ejecutar programas en
HP
Como se explicó, grabe el documento PHP en la l"'-::.r·n° r-::i; C:\xampp\ htdocs. En el ejemplo, el programa se ha grabado con el nombre rnidocumen 1
3 KB 2 KB
Imagen PNG
3 KB
Irnaqen GIF
:3 KB Imagen GIF 2 Imagen 1 KB
Archivo PHP
El resultado de los programas anteriores es:
Hola
.isto
Hora a Todos Bienvenidos a
PHP
Ăsto
181
u
riab Una variable en PHP tiene las siguientes características: 1. Debe empezar un el signo dólar($). 2. El siguiente carácter después del signo$ debe ser un guión bajo o una letra y después cualquier otro carácter. 3. No es necesario declarar o definir las variables. 4. Las mayúsculas y minúsculas son diferentes para PHP.
Ejemplo 201 Este programa de ejemplo utiliza dos variables y muestra su contenido en un mensaje concatenado.
<?php $Nombre="Maria José"; $Edad=9; echo "Hola ".$Nombre." tu edad es ".$Edad."Años" ?> El resultado es:
Hola Maria José tu edad es 9Años En este programa de ejemplo los mensajes van entre comillas y las variables no., pero PHP también reconocerá las variables si las escribimos dentro de las comillas como se muestra a continuación: echo "Hola $Nombre tu edad es $Edad Años"; El resultado será el mismo que el ejemplo anterior.
182
las de seamos utilizar en un programa, pero se puede trabajar con los siguientes de datos.
Cadena
caracteres. lógicosTrue y False
Las variables globales en PHP son aquellas cuyo valor es reconocido dentro de programa, por dentro y fuera de una Función las cuales se explican más adelante. En cuando se como se muestra en el siguiente ejemplo:
una variable es de
Local
echo "la variable local contiene:$a" Para crear una variable Global sólo debe declararla con la palabra Global como se muestra en el siguiente ejemplo: Global $a; $a="Hola"; echo "la variable global contiene:$a";
183
Desarrollo web con
Constantes Las Constantes son identificadores que se pueden utilizar en PHP cuyo valor no se puede cambiar durante la ejecuciรณn de un programa. Para definir una constante se utiliza la siguiente sintaxis:
Define (Nombre.Valor);
Nombre Es el nombre de la constante que desea crear en PHP.
Valor Es el valor que tendrรก la constante durante la ejecuciรณn def programa. Las siguientes instrucciones de ejemplo crean y utilizan una constante llamada IGV: <? Define (IGV, 18); Echo "El IGV es:".IGV." %"; ?> PHP contiene algunas constantes predefinidas que podemos utilizar en cualquier programa. Ejemplo: _FILE_ Esta constante devuelve el archivo PHP que se estรก ejecutando.
184
--------------------/
Capitulo
Esta constante
el
Z Páginas
PHP
de linea del archivo PHP que se
PHP VERSION Esta constante devuelve la versión de PHP que esta utilizando.
Esta constante devuelve la versión del sistema zando.
nn<CH' . .:JT!\
que esta utiti
Operadores aritméticos de len
8*5=
Resto
rios Los comentarios son textos que se µu>;;•.'U\;;;I un programa y se utilizan para documentar el diseño del Estos textos son ignorados cuando se ejecuta el programa. 1. Comentario en una sola línea de texto. Cuando el comentario sólo ocupa una línea de texto se
dos barras 185
IPHP'.
Desarrollo web con PHP '"""" invertidas. //Esto es un comentario de una línea. Cuando el comentario sólo ocupa una línea también se puede utilizar el símbolo numeral (#). #Esto también es un comentario.
2. Comentario con yariables líneas de texto. Cuando el comentario va a ocupar varias líneas de texto se utiliza una barra invertida y un asterisco para iniciarlo y un asterisco y una barra invertida para terminarlo, !* Esto es un comentarios y se utiliza cuando queremos escribir en varias líneas de .texto*/ Los comentarios de una sola línea pueden ir en una línea independiente o después de una instrucción como se muestra a continuación: <?php echo $valor1; //Imprime la variable ?> Si queremos mostrar el resultado de una operación aritmética, debemos escribirla fuera de las comillas y entre paréntesis.
Ejemplo 202 Este programa de ejemplo muestra el resultado de la suma de dos variables: <?php Svalor l=l S; Svalorz=S; echo "$valorl + $valor2 =".($valorl ?> El resultado es: 186
+ $valor2);
15 + 5 =20
Otra forma de desarrollar el programa anterior es una tercera varia ble para almacenar la suma y colocar todas tas variables entre comillas:
Svalor I=Ló;
El 15 + 5 :::co2Q
Ahora que ya sabe lo básico de PHP HTML. se las estructuras
con
HTML <HTML> <HEAD> </HEAD>
</BODY> </HTML>
187
<?php
?> Normalmente las instrucciones PHP van dentro del cuerpo de un documen to HTML, es decir, dentro de <BODY> </BODY> y cada vez que desea utilizar instrucciones debe abrir la estructura PHP y después de escribir las instrucciones, cerrarla.
Ejemplo Nº 203 Este programa de ejemplo se llama index.php y utiliza código HTML y PHP para mostrar en una tabla el resultado de las cuatro operaciones aritméticas básicas:
Tabla con HTiv.1L y PHP
188
Instrucciones
Documento
<html> <head> <title> HTML y PHP </title> </head> <body> <Center> <Table Border="5"> Tabla con <tr>
y PHP
193
~p'upH ~ n ¡~
Desarrollo web con PHP "
'-· ---------------
<th Colspan=2> OPERADORES ESPECIALES <tr> <th Colspan=2> $A=8 y <tr> <th Align=Center> Expresión <th Align=Center> Valor de C <tr> <td Align=Center> $C ++$A* 2 <?php $A=8; $C=++$A * 2; ?> <td Align=Center> <?php echo $C;?> <tr> <td Align=Center> $C = $A++ * 2 <?php $A=8; $C=$A++ *2; ?> <td Align=Center> <?php echo $C;?> <tr> <td Align=Center> $C $A++ $8 <?php $A=8; $8=5; $G=$A++ $8; ?> <td Align=Center> <?php echo $C;?> <tr> <td Align=Center> $C = ++$A $8 <?php $A=8; $8=5;
=
=
l
194
HTMLyPHP <ztitle>
los variables =15; $valor2=4; ?> <Center> Border="5"> <caption> Tabla con HTML y PHP <zcannon> <tr> <th> Valor Nº 1 <th> Valor Nº 2 <th> Operador <th> Resultados <tr> <td Align=Center> <?php echo $valor1 ; //Imprime la variable 1 <td Align=Center> <?php echo $valor2; //Imprime la variable 2 ?> <td Align=Center> + <td Align=Center> <?php echo ($valor1 + $valor2); 11
...,;:::11..u~c1uv
?> <tr> <td Align=Center> <?php echo $vafor1; <td Align=Center> <?php echo $valor2; <td Align=Center>
?> ?>
189
u
<td Align=Center> <?php echo ($valor1 $valor2); ?> <tr> <td Align=Center> <?php echo $valor1; ?> <td Align=Center> <?php echo $valor2; ?> <td Align=Center> * <td Align=Center> <?php echo {$valor1 * $valor2); ?> <tr> <td Align=Center> <?php echo $valor1; ?> <td Align=Center> <?php echo $valor2; ?> <td Align=Center> I <td Align=Center> <?php echo ($valor1 I $valor2); ?> <tr> <td Align=Center> <?php echo $valor1; ?> <td Align=Center> <?php echo $valor2; ?> <td Align=Center> % <td Align=Center> <?php echo ($valor1 % $valor2); ?> </Table> </Center> </body> </html> En la siguiente página se han cambiado los valores.
Tabla con Hr.t.·1Ly PHP
Listo
190
__________________
____,,/
Capitulo 2 Páginas PHP
les
Operadores ++ Incrementa en 1 el muestra el número 6.
de una variable.
<?php
siguiente programa
ejemplo
6
$a++; echo Sa; ?>
en 1 el muestra el número 5.
una
<?php
ejemplo
5
$a=5; $a--;
Si los operadores anteriores se utilizan dentro de una expresión aritmética existe una diferencia cuando se 'Colocan antes o después de la variable: $a++ se colocan antes de la nir•m.a....... el o cremento y luego la operación ".:lnrrn.a·r Si se colocan después de la variable, primero se ejecuta la la operación aritmética y luego el incremento o decremento. \l"'.lll"•"'.llli"\IO
1f"'".:I
el siguiente ejemplo el valor final de la variable a es 4 y el valor de la 191
UPHPJI
Desarrollo web con PHP "
variable e es 8 porque primero se disminuye en 1 el valor de la variable a (de 5 a 4) y luego se multiplica por 2.
<?php $a=5; $c=--$a*2; echo "el valor de a es $a"."<BR>11; echo "el valor de ces $e"; ?> el valor de a es 4 el valor de e es 8 En el siguiente ejemplo el valor final de la variable a es 6 y el valor de la variable e es 1 O porque primero se ejecuta la operación, es decir, el valor inicial de la variable a por 2 (5*2) y luego se incrementa en 1 el valor de la variable.
<?php $a=5; $c=$a++*2; echo "el valor de a es $a"."<BR>"; echo "el valor de )e es Se":' ?> el valor de a es 6 el valor de e es 10
Ejemplo Nº 204 Este programa de ejemplo utiliza código HTML y PHP para mostrar en una tabla los resultados de los operadores especiales:
192
?>
<td
echo
<tr> <td Align=Center> $C = <?php $A=8; $8=5; . $C=++$A * $8足足; ?> <td <tr> <td
* $8足足
=
*
?>
<td
echo
<tr> <td Align=Center> $C = ++$A+ ++$8 <?php $A=8; $8=5; $C=++$A + ++$8; <td Align=Center> <?php echo $C;?> <tr>
<td
$C
=
+
<?php $A=8; $8=5; $C=$A++ + $8++; 195
?> <td Align=Center> <?php echo $C;?> </Table> </Center> </body> </html>
+= Este operador calcula la suma del contenido de una variable que va a la izquierda mĂĄs otro valor que va a la derecha y almacena el resultado en la variable de la izquierda. En estas instrucciones el valor inicial de la variable A es 5 y despuĂŠs del operador vale 9.
Tabla con HTiv.!L y PHI? OPERADORES ESPECIALES Equivale a:
!vruor de C 6 2 8 2
o 42
196
Este operador calcula la resta del contenido de una que va a la izquierda menos otro valor que va a la derecha y almacena el resultado en la variable de la izquierda. En las siguientes instrucciones el valor inicial de la variable A es 5 y despuĂŠs del 1.
<?php
$A=5; $A-=4; echo $A; ?>
*=
Este operador calcula la del de una que va a la izquierda por otro valor que va a la derecha y almacena el resultado en la de la En las siguientes instrucciones el valor inicial de la variable A es 5 y despuĂŠs del 20.
<?php
20
$A=5; $A*=4; ?> Equivale a: $A= $A* 4;
!= Este operador calcula la divisiĂłn del contenido de una variable que va a la izquierda entre otro valor que va a la derecha y almacena el resultado en
l
19.7
IPHPi\l
Desarrollo web con PHP "...._
_
la variable de la izquierda. En las siguientes instrucciones el valor inicial de la variable A es 5 y después del operador vale 1.25. <?php $A=5; $A/=4; echo $A; ?>
1.25
Equivale a: $A
= $A / 4;
J
%=
Este operador calcula el resto de una división del contenido de una variable que va a la izquierda entre otro valor que va a la derecha y almacena el resultado en la variable de la izquierda. En las siguientes instrucciones el valor inicial de la variable A es 5 y después del operador vale 1 .
<?php $A=5; $A%=4; echo $A; ?> Equivale a: $A = $A % 4;
.-
Este operador se utiliza para cadenas de texto y permite concatenar et contenido de una variable que va a la izquierda con otro texto que va a la derecha y almacena la concatenación en la variable de la izquierda. En las siguientes instrucciones el texto inicial de la variable A es PHP y después del operador es PHP Como debe ser.
198
<?php
ser
Tabla con HTivIL y FHJ?
199
Instrucciones del Documento HTML <htrnl> <head> <title> HTMLy PHP </title> </head> <body> <Center> <Table Border="5"> <caption> Tabla con HTML y PHP </caption> <tr> <th Colspan=3> OPERADORES ESPECIALES <tr> <th Colspan=3> $A=4 y $8=2 <tr> <th Align=Center> Expresión <th Align=Center> Equivale a: <th Align=Center> Valor de C <tr> <td Align=Center> $A+= $8 <td Align=Center> $A= $A+ $8 <?php $A=4; $8=2; $A+= $8; ?> <td Align=Center> <?php echo $A;?> <tr> <td Align=Center> $A= $8 <td Align=Center> $A= $A $8 <?php
200
1
$A=4; $8=2; .$A= $8; ?> <td Align=Center> <tr> <td
<?php echo
:::::::
*
$A*= $8; ?> <tr> <td Align=Center> $A/= $8 <td Alígn=Center> $A= $A I $8 <?php . $A=4;
?> <td
echo
<tr> <td $A%= $8 <td Align=Center> $A = % <?php $A=4; $8=2; $A%= $8; ?> <td Align=Center> <?php echo $A;?> <tr> 201
Desarrollo web con PHP
°'---------,..--------
<td Align=Center> $A.= $8 <td Align=Center> $A= $A. $8 <?php $A=4; $8=2; $A.= $8; ?> <td Align=Center>
<?php echo $A;?>
</Table> </Center> </body> </html>
Ejemplo Nº 206 Este programa de ejemplo utiliza código PHP con frames y tablas de HTML
y muestra ejemplos de los operadores aritméticos básicos y especiales.
Cuando se ejecuta la página principal se muestra los vínculos en el trame izquierdo y el frame donde se mostrarán los ejemplos, en blanco:
ARIMÉTICOS
202
En el cos:
Tabla con H'Th1l y PHP
En el siguiente ejemplo se ha hecho clic en el vĂnculo: ciales
Tabla con HTML y PHP
203
Desarrollo web .con En el siguiente 2:
ejemplo
se ha hecho clic en el vínculo: Operadores
OPER4DORES ARilVlÉTICOS Tabla con HTMI, y PHP · OPERADORES ESPECIAI,ES
Instrucciones del documento Tltulos.Html:
<html> <head> <title> Mis Paginas Web </title> </head> <body> <center> <Hl> OPERADORES ARIMÉTICOS </Hl> </center> </body> </html>
204
Espe
<html> <head> <title> Mis ,_,,,,,.,.n¡~ Web </title> 0
<body>
</A> <P> Especiales 2 </A>
Instrucciones del archivo
<head> PHP con Frames y Tablas </head> <FrameSet Rows="l5%,*"> <FrameSet Cols="25%, *"> <Frame Name=IEjcmplos"> </FrameSet> </FrameSet> </html>
HTML
llPHP!!
Desarrollo web con PHP "~_....... Instrucciones del programa P203.Php <html> <head> <title> HTML y PHP </title> </head> <body> <?php #Asigna los Valores a las variables $valor1=15; $valor2=4; ?> <Center> <Table Border="5"> <caption> Tabla con HTML y PHP </caption> <tr> <th> Valor Nº 1 <th> Valor Nº 2 <th> Operador <th> Resultados <tr> <td Align=Center> <?php echo $valor1; //Imprime la variable 1 ?> <td Align=Center> <?php echo $valor2; //Imprime la variable 2 ?> <td Align=Center> + <td Align=Center> <?php echo ($valor1 + $valor2); //Imprime el resul tado?> <tr> <td Align=Center> <?php echo $valor1 ; ?> <td Align=Center> <?php echo $valor2; ?> <td Align=Center>
206
_
<td Align=Center>
<?php echo ($valor1 $valor2);
?>
<tr> <td
; <td Align=Center>
?>
<?php echo $valor2;
?>
<td *
<td Alígn=Center>
echo $valor2;
?>
<td echo </Table> </Center> </html>
<html> <head> <title> HTMLy </title>
</head>
<tr> 207
<th
"'"'il''"''""'
<tr> <th <tr> <th <th A!ign=Center> Valor de C <tr> <td Align=Center> $C = ++$A* 2 ''VilvU•c;il
$A=8; * 2;
?> <tr> <td Align=Center> <?php $A=8; $C=$A++ ?> <td <tr> <td <?php $8=5; $C=$A++ ?> <td <tr> <td
208
=
*2
echo $C;?> :::
=
$C=++$A ?> <td <tr> <td
$C =++$A*
<?php $A=8;
<td
<?php echo
<tr> <td
:::: $A++*
$C=$A++ *
?> <td Aliqn=Center> <?php echo <tr> :::: <td $A=8; $8=5; $C=++$A + ++$8; ?> <td <?php <tr> =$A+++ <?php $A=8; $8=5; $C=$A++ +
209
?> <td Align=Center>
<?php echo $C;?>
</Table> </Center> </body> </html>
<html> <head> <title> HTML y PHP </tit!e> </head> <body> <Center> <Table 8order="5"> <caption> Tabla con HTML y PHP </caption> <tr> <th Colspan=3> OPERADORES ESPECIALES <tr> <th Colspan=3> $A=4 y $8=2 <tr> <th Align=Center> Expresión <th Align=Center> Equivale a: <th Align=Center> Valor de C <tr> <td Align=Center> $A+= $8 <td Align=Center> $A= $A+ $8 <?php $A=4; $8=2; $A+= $8; ?> <td Align=Center> <?php echo $A;?> <tr> <td Align=Center> $A= $8 <td Align=Center> $A= $A $8 <?php $A=4;
~ª 210
$AÂ= $8; ?> <tr>
$8=2; ?> echo <tr> <td Align=Center> <?php $8=2;
!= ?> <?php echo <td <tr> <td Align=Center> %=$B $A=$A% <td <?php $A=4; $8=2; $A%= ?> <td Align=Center> <?php echo $A;?> <tr> <td Align=Center> $A.= $8 <td Align=Center> $A= $A. $8 $A=4;
21
$A.= $8; ?> <td Align=Center> <?php echo $A;?> </Table> </Center> </body> </html> Para mostrar el contenido de una variable, la instrucciรณn
PHP:
<?php echo $A;?> Se puede reemplazar por: <?=$A?> En las siguientes instrucciones de ejemplo se utiliza el signo igual (=)para mostrar el contenido de las variables del ejemplo anterior: <html> <head> <title> HTMLy PHP </title> </head> <body> <Center> <Table Border="5"> <caption> Tabla con HTML y PHP </caption> <tr> <th Colspan=3> OPERADORES ESPECIALES <tr> <th Colspa n=3> $A=4 y $8=2 <tr> <th Align=Center> Expresiรณn <th Align=Center> Equivale a: <th Align=Center> Valor de C <tr> <td Align=Center> $A -t:= $8 212
<td
?>
<td
?>
I
?>
<td % 213
<?php
$A%= $8; ?> <td Align=Center> <?=$A?> <tr> <td Align=Center> $A.= $8 <td Align=Center> $A= $A. $8 <?php $A=4; $B=2; $A.= $8; ?> <td Align=Center> <?=$A?> <!Table> </Center> </body> </html> El resultado
del programa
es el mismo:
Tabla con HTfv:IL y PHP
214
se
los
tr".:l!1n~'t1orir
La rht
....r,.., ....,...;....
entre estos dos me:tocios que el los envĂa por la
mas para enviar
hacia el utilizar las
usando la
que
JÍPHPIÍ
Desarrollo web con PHP '' php para almacenarla en la base de datos y GET sirve mas para pasar pa rámetros entre páginas tales como indicadores de las acciones a realizar, ids de registros, valores de variables sencillos, etc. <Form Action="http://localhost/MiPagina.Php"
Method="Post">
¿Qué método utilizar? El método que utiliza para enviar los valores depende del tipo de aplicación que este desarrollando, por ejemplo: Para aplicaciones de búsqueda o de filtro de información por ejemplo, clien tes por distrito, Alumnos por cliclo, etc. es aconsejable usar el metodo GET, ya que el usuario es muy probable que entre en una página y luego vuelva para atrás, con lo cual se realiza en forma automática refresh o actualización de la pagina con los resultados de búsqueda en forma correcta. Es aconsejable utilizar el método POST cuando se desarrolla una aplicación que debe enviar mucha información a un sitio Web, o es información que no va hacer cambiada por el usuario ya que si se actualiza o refresca se mostrará una ventana con un mensaje de advertencia. Si en la siguiente página se envía mediante el método Get el valor que se ingresa, este valor se mostrará en la URL
216
___________________ el siguiente po~ueseha
__,/
o1t::•m1"1n
Capitulo 2 Páginas PHP
se ha enviado el ~m~odo
Ver
Favoritos
Herramientas
Ayuda
t"~r·'!:l!l"'itOf'IC,'tll"".:1
se del
el valor que se
217
IPHP!
Desarrollo web con PHP "" En el siguiente ejemplo se ha enviado el número 6 y URL porque el método Post la envía en forma oculta.
es mostrado en la
Si se actualiza la página donde son enviados los valores se· mostraráuna ventana de mensaje por el método Post utilizado.
P9f~ n)t)strar efe hlj~yoesta .·página;web,.· Internet· Explot~r debe vplyer a envi¿¡r la información que ya envió anteriormente.
Si estuviera realizando. una compra, haga clic enCa9~élarpara evitar que la tr ans.acción se realice dos veces. De 9t~ ~· forma,,. ha9a die en Reintentar pere.volver a mostrar la pági11a web.
L
Cancelar
J .:
Ejemplo 207 El siguiente ejemplo permite ingresar un número en una pagina HTML y enviarlo a una pagina PHP
218
___________________
__,/
Capitulo 2 Páginas PHP
el rmmero que
La página HTML se llama Ejemplo207.Html y su
<Html>
<Input Type=t'text" Name="TxtNumero"> <Br> Type=" Sublvíit''>
</Form> </Body> </Html> Como puede observar, el numero que se ingresa en el formulario HTML será procesado en la pagina PHP llamada MiPagina.Php y se enviará con el Post. de textos donde se ingresa y se envía el número se llama TxtNumero.
IPHPll
Desarrollo web con PHP
°"''"
Para referirse en una página PHP a un valor enviado desde un formulario HTML con el método Post se utiliza la siguiente sintaxis:
$_POST['Nombre del Control'] Para el método Get se utiliza la siguiente sintaxis:
$_GET['Nombre del Control '] Utilice $_POST y $ _ GET en mayúsculas. La página PHP que recibirá y procesará el número se llama MiPagina.Php y su contenido es: <?
echo "hola, el numero que usted ingresó es:". $_POST['TxtNumero'); ?>
220
<Head> con </Title> </Head> <F onn Action=,"http://localhost/MiPagina.Php" Ingrese un Numero <Br> <Input <Input </Fonn> </Body>
Method='Post''>
221
IPHPU
Desarrollo web con PHP '
Instrucciones del Documento MiPagina.Php <? echo "hola, el numero que usted ingresó es:". $_GET['TxtNumero']; ?> La ejecución de los documentos anteriores es el mismo:
hola= el numero que usted ingresó es: 18
222
-------------------~/
Capitulo 2 Páginas PHP
MiPagina.Php
?> funcionando
como se
dos números en un formulario dichos numero en una pagina PHP.
y calcula
hola, e] numero
Ejemplo 209 ejemplo permite y muestra la suma
u ......,1r0•=-"'.lr
223
ÍPHP!I
Desarrollo web con PHP ,....._
_
La suma de los maneros ingresados es: 14
El documento HTML se llama Ejemplo209.Html y su contenido es el si guiente: .---~~~~~~~~~~~~~~~~~~~~~~~~~~~~---.
<Html> <Head> <Title>. Formularios HTML con PHP </Title> </Head> <Body> <F orm Action="http://localhost/Suma.Php" Method="Post"> Ingrese el ler. Numero <Br> <Input Type="text" Name=''Numerol "> <Br> Ingrese el 2do. Numero <Br> <Input Type="text" Name=t'blumero?"> <Br> <Input Type="SubMit" Value=t'Enviar"> <Input Type="Reset" Value="Cancelar"> </Form> </Body> </Html> 224
--------------------------/
se
El
Capitulo 2 Páginas PHP y su
el
<?
11 Almacena en variables los números recibidos $Numero!= $Numero2 = $_POST['Numero2']; //Calcula la suma de los dos números $Suma = $Numero2; //Muestra la suma echo "La suma de los números •nrrr""'"'ª,- "C' es: n 1
tal
el 1 er. Numero
225
Desarrollo web con PHP ""
Instrucciones del documento Suma.Php: <?
11 Almacena en variables los números recibidos
$Numerol = $_POST['Numerol']; $Numero2 = $_POST['Numero2']; //Calcula la suma de los dos números $Suma= $Numero!+ $Numero2; //Muestra los números y la suma echo $Numero 1 . " + " . $Numero2 . " ?>
226
= "
.$Suma;
Este formularios
es anterior con y tablas en los documentos.
que
se
227
E! documento <Htmi> <Head>
</Title> </Head>
<Tr>
</Tr> <Tr>
<Tr>
</Html>
228
se llama
y su contenido es
------------------~/ Ef documento
Php se llama Suma'Iablas.Php
Capitulo 2 Páginas PHP y su contenido es:
<Html> <Head> <Title> Resultados </Title> </Head>, <Body> <? //Almacena en variables los valores ingresados $Valor1 =$ _POST['valor1 ']; $Valor2=$ _ POST['valor2']; vo•vu.10 la suma $Suma=$Valor1 + $Valor2; <Center> <Tr> </Tr> <Tr> <Td> Valor Nº </Td> <Td> Valor Nº 02 </Td> Suma </Tr> <! Muestra los valores y resultado en la <Tr AUGN=CENTER > <T d> <?=$Valor1 ?> <Td> <?=$Vator2 ?> <ffd> </Td>. <Td> </Tr> </Table> </Form> </Center> </Body>
>
229
ÍPHPI
Desarrollo wep con PHP "" </Html> Este documento PHP recibe los datos con el método POST y muestra los números y el resultado de la suma utilizando una tabla.
Como se explicó en el capitulo anterior, es opcional cerrar las filas y co lumnas en una tabla (</Tr>, </Td> ), corno se muestran en las siguientes instrucciones modificadas del documento SurnaTablas.Php: <Htrnl> <Head> <Title> Resultados </Title> </Head> <Body> <?
l/Almacena en variables los valores ingresados $Valor1 =$_POST['valor1 ']; $Valor2=$ _POST['valor2']; //Calcula la suma
1
230
$Surna=$Valor1
+ $Valor2;
?> <Table Border=3> <Tr> <Tr>
y
la tabla Â>
<T d> <?=$Valor2. ?> ?> </Table> </Form>
</Html>
21 Este ejemplo permite ingresar dos nĂşmeros en un documento Html y muestra el resultado de sus 4 en un
llPHPll
Desarrollo web con PHP '
El documento Html se llama Ejemplo211.Htmly su contenido es el siguiente: <Html> <Head> <Title> Formularios HTML con PHP </Title> </Head> <Body> <Center> <Form Action="http://localhost/OperacionesBasicas. Php" Method="Post"> <Table> <Tr> <Th Colspan=2> INGRESO DE VALORES</TH><Br> </Tr>
232
___,/ Capitulo 2 Páginas PHP
__________________ <Tr> 1 er. valor <fTd> <Input
<fTr> <Tr> <Td> 2do. valor </Td> <Td> <Input Type="Text" Name="valor2"> </Td> <Tr> <Td> <Input Type="SubMit" vaure=: ............ ..,.......... </Td> <Td> <Input Type=''Reset" Value="Cancelar"> <fTd> </Tr>
<Table> </Form>
</Html> El documento Php se llama OperacionesBasicas.Php es:
y su contenido
Resultados <fTitle> </Head> <? //Almacena en
valores
U"\Nl"'Oe-~r1,.
ve
=$_POST['valor1 ']; $Valor2=$_POST['valor2']; //Calcula los resultados $Suma=$Valor1 + $Valor2;
233
$Resta=$Valor1 $Multiplica=$Valor1 $Divide=$Valor1
$Valor2; * $Valor2;
I $Valor:2;
?> <Center> <Table Border= 3> <Tr> <Th Colspan=4> RESULTADOS <Tr> <Td> Valor Nº 01 <Td> Operador <Td> Valor Nº 02 <Td> Resultado <! Muestra los valores y resultados en la tabla > <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> + <Td> <?=$Valor2 ?> <Td> <?=$Suma ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> <Td> <?=$Valor2 ?> <Td> <?=$Resta ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> * <Td> <?=$Valor2 ?> <Td> <?=$Multiplica ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> / <Td> <?=$Valor2 ?> 234
1
<Td> <?=$Divide
?>
</Form> </Center> </Body> </Html> En el ejemplo anterior se mostrarรก un mensaje de error si el usuario no el o ingresa el cero porque no se podrรก dividir entre
el
235
La instrucción lf Esta instrucción permite crear condiciones en un documento PHP. Su sin taxis es la siguiente: If (Condicion) { Bloque de Instrucciones 1 }
Else { Bloque de Instrucciones 2 } El bloque de instrucciones 1 se ejecuta cuando el resultado de la condición es verdad y el bloque de instrucciones 2 se ejecuta cuando el resultado de la condición es falso. Si sólo desea preguntar si una condición es verdad, puede utilizar la si guiente sintaxis:
If (Condición) {
Bloque de Instrucciones 1 } Los operadoresde comparación que se puedenutilizar en PHP son los siguientes:
Igual que
236
I=
Diferente
<
Menor Que
>
Mayor Que
<=
Menor o Igual Que
>=
Mayor o Igual Que
En PHP también puede utilizar los siguientes operadores Lógicos:
XOR
OR Exclusivo
En las de ejemplo se ha OperacionesBasicas.Php para que muestre un m~•nC'".'.lla ingresado alguno de los valores: <Head> <Title> <rntle> <Body> <? se lf (Empty($_POST['valor1 '])) { "No ha ingresado el !/Detiene ta ejecución del programa die; } /Nerifica que se haya ingresado el valor 2
lf { echo "No ha ingresado el segundo valor";
237
Desarrollo web con PHP ' //Detiene la ejecución del programa die; } //Almacena en variables los valores ingresados $Valor1 =$_POST['valor1 ']; $Valor2=$_POST['valor2']; //Calcula los resultados $Suma=$Valor1 + $Valor2; $Resta=$Valor1 $Valor2; $Multiplica=$Valor1 * $Valor2; $Divide=$Valor1 I $Valor2; ?> <Center> <Table Border=3> <Tr> <Th Colspan=4> RESULTADOS <Tr> <Td> Valor Nº 01 <Td> Operador <Td> Valor Nº 02 <T d> Resultado <! Muestra los valores y resultados en la tabla > <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> + <Td> <?=$Valor2 ?> <Td> <?=$Suma ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> <Td> <?=$Valor2 ?> <Td> <?=$Resta ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> * 238
<Td> <Td> <Tr <Td> <Td> <Td> <Td> </Table> </Form>
<?=$Valor2 ?> ?> <?=$Valor1 ?> I ?> <?=$Divide ?>
</Body> </Html> En estas instrucciones se
La función
la
devuelve el valor True si el valor es la
,...,,....t....,V!l"
Empty (Argumento)
función también Exit:
detiene la ejecución de un programa PHP.
//Verifica que se el valor l If (Empty($_POST['valorl '])) { echo "No ha ingresado el valor"; //Detiene la ejecución del programa die; }
//Verifica que se haya ingresado el valor 2 If (Empty($_POST['valor2'])) {
echo "No ha ingresado el segundo valor"; //Detiene la ejecución del programa
239
IPHP!I
Desarrollo web con PHP "~ Con la función die también podemos mostrar un mensaje como se muestra en el siguiente ejemplo:
d ie("No ha ingresado el Ejemplo:
INGRESO DE VALORES
No ha ingresado el segundo valor
240
valor");
__________________
__,/ Capitulo 2 Páginas PHP
En las siguientes instrucciones del documento OperacionesBasicas.Php se utiliza una variable llamada $Error para el correcto los datos. En estas muestran un ingresan letras en lugar de los números.
maine-".:!!•0
error
se
<Head> <Title> Resultados </Title> </Head> <Body> /Nariable para el control de errores /Nerifica que se haya ingresado el valor 1 lf 'O'Vlllr>THf
{ } se lf (Empty($_POST['valor2'])) { $Error=True; } lf (($_POST['valor1 'J==O) { $Error=True; }
2
($_POST['valor2']==0))
lf { "Error en el
de los
,.,¡,..,.,...........
//Detiene la ejecución del programa 241
UPHPU
Desarrollo web con PHP "'...._ Exit; } //Almacena en variables los valores ingresados $Valor1 =$_POST['valor1 ']; $Valor2=$ POST['valor2']; //Calcula los resultados $Suma=$Valor1 + $Valor2; $Resta=$Valor1 $Valor2; $Multiplica=$Valor1 * $Valor2; $Divide=$Valor1 I $Valor2; ?> <Center> <Table Border=3> <Tr> <Th Colspan=4> RESULTADOS <Tr> <Td> Valor Nº 01 <Td> Operador <T d> Valor Nº 02 <Td> Resultado <! Muestra los valores y resultados en la tabla > <Tr ALIGN=CENTER> <T d> <?=$Valor1 ?> <Td> + <Td> <?=$Valor2 ?> <Td> <?=$Suma ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> <Td> <?=$Valor2 ?> <Td> <?=$Resta ?> <Tr ALIGN=CENTER>
242
1
_
</Html>
error:
Caso 02
Caso 03
INGRESO DE VAL,ORES Ler. valor
'---~------~--,·---~ 2do. valor ·----------~~---------~ [ Cancelar
244
04
las instrucciones del documento
245
Si los datos se ingresan
correctamente
ler. valor
Cancelar
246
los resultados:
~~-----·-·-··----~~·-···---~·--·~-·-·--~---"
2do. valor
1
se muestran
Las instrucciones del redireccionan la pagina Web La n-:1.rnn,-:::1 Web a la que se redirecciona se muestra un para de los datos:
la
La siguiente instrucciรณn redirecciona a la pรกgina llamada Mensaje.Php:
que la empezar con exactamente con la directiva o espacio en Si no se cumple con la condiciรณn anterior de error:
debe
se mostrarรก el siguiente mensaje 247
Desarrollo
web con PHP "'.....
Antes de utilizar
_
la función header debe crear la página a redireccionar.
Las siguientes instrucciones crean la página mensaje.php a la cual se redi reccionará cuando el usuario no ingrese los datos correctamente: <Html> <Head> <Title> Mensaje al Usuario <z'Title> </Head> <body> <Center> <Font Size=6> Los datos no se han ingresado correctamente <Br> <Hr> <Br> <A HREF="Ejemplo211.htm1"> Regresar </A> </Center> </body> </Html>
248
</Font>
Al hacer clic
Instrucciones del documento a la pĂĄgina no se han ingresado mente y en caso contrario muestra
la los datos correctaÂ
<? /Nariabie
para el control de errores
/Nerifica que se haya ingresado
el valor
lf { $Error=True; } /Nerifica
que se haya ingresado
el valor 2
if (Empty($_POST['valor2'])) { $Error=True; } /Neririca
que no se
lf (($_POST['valor1
letras ']==O) OR ($_POST['valor2']==0))
{
249
Desarrollo $Error=True; } //Pregunta si existe algun error lf ($Error==True){ //Si existe algún error se redírecciona la página headert'Locatlon: mensaje.php'); programa //Detiene la ejecución Exit;} //Almacena en variables los valores ingresados $Valor1 =$_POST['válor1 ']; $Valor2=$_POST['valor2']; //Calcula los resultados $Suma=$Valor1 + $Valor2; $Resta=$Valor1 $Valor2; $Multiplica=$Valor1 * $Valor2; $Divide=$Valor1 I $Valor2; ?> <Html> <Body> <Center> <Table Border=3> <Tr> <Th Colspan=4> RESULTADOS <Tr> <Td> Valor Nº 01 <Td> Operador <Td> Valor Nº 02 <Td> Resultado <!Muestra los valores y resultados en la tabla> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> + <Td> <?=$Valor2 ?>
250
_____________________
___,/
Capitulo 2 Páginas Pl"iP
<Td> <Td> <?=$Resta
?> ?>
<Td> <?=$Valor1 ?> * <T d> <?=$Valor2 ?> <Tr ALIGN=CENTER> <Td> I ?>
251
Si los datos se ingresan correctamente, se muestran los resultados:
252
Desarrollo web con PHP "...._ a la página Mensaje.Php
_
utilizando código Html.
<Htrnl> <Head> <Title> Resultados </Title> </Head> <Body> <? /Nariable
para el control de errores
$Error=False; /Nerifica
que se haya ingresado
lf (Empty($_POST['valor1
el valor 1
']))
{ $Error=True; } /Nerifica
que se haya ingresado
el valor 2
lf (Empty($_POST['valor2'])) { $Error=True; } /Neririca
que no se hayan ingresado
lf (($_POST['valor1
letras
']==O) OR ($_POST['valor2']==0))
{ $Error=True; } //Pregunta
si existe algun error
lf ($Error==True){ //Si existe algún error se redirecciona
la página
?> <! Codigo Html > <meta httpequiv="Refresh"
254
content=t'Biurl=mensaje.php">
<? del
//Almacena
en variables
$Multiplica=$Valor1
los valores
ingresados
* $Valor2;
$Divide=$Valor1
<Table Border=3> <Tr> <Th Colspan=c>
RESULTADOS
<Tr>
<Td> Resultado < !- Muestra los valores y resultados en la tabla >
<Tr AUGN=CENTER> <Td> ?> <Td> ?> <Td> ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> 255
IPHPll
Desarrollo web con PHP "'"" <Td> <?=$Valor2 ?> <Td> <?=$Resta ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> * <Td> <?=$Valor2 ?> <Td> <?=$Multiplica ?> <Tr ALIGN=CENTER> <Td> <?=$Valor1 ?> <Td> I <Td> <?=$Valor2 ?> <Td> <?=$Divide ?> </Table> </Form> </Center> </Body> </Html>
Ejemplo 212 Este ejemplo permite ingresar tres números diferentes en un documento Html y muestra el mayor de los números ingresados:
2do.
256
Instrucciones del <Html> <Head> <Title> HTML
PHP
</Title>
<Tr> <Th Colspan=2> INGRESO DE VALORES</TH><Br>
<Td> <Tr> <Td> 2do. valor <Td> <Input Type="Text" Name="valor2"> <Tr> <Td> 3er. valor
257
Desarrollo web con PHP~'---------------<Td> <Input Type="Text" Name="valor3"> <Tr> <Td> <Input Type="SubMit'' Value="Enviar"> <Td> <Input Type="Reset" Value="Cancelar"> </Table> </Form> </Center> </Body> </Html> Instrucciones
del documento Mayor.Php:
<? //Almacena en variables los valores ingresados $Valor1 =$_POST['vator1 ']; $Valor2=$ _POST['valor2'J; $Valor3=$_POST['valor3']; lf ($Valor1 >$Valor2) { $Mayor=$Valor1; } Else { $Mayor=$Valor2; } lf ($Mayor<$Valor3) { $Mayor=$Valor3; } ?> <Html> <Head> <Title> Resultados
<Center>
</Body>
son iguales.
259
IPHP
Desarrollo web con PHP ''
Cuando los números son diferentes muestra el mayor y menor:
L"NGRESO DE VALORES
2do. valor 3er. valor Cancelar
Formularios
HTML con PHP
<Body> <Forrn Action="MayorMenor.Php"
Method="Post">
<Table> <Tr> <Th Colspan=2>
INGRESO
DE VALORES</TH><Br>
<Tr>
1 er. valor <Td> <Input Type="Text" Name="valor1 ">
<T d>
<Td> 2do. valor <Input 261
Desarrollo <Tr> <Td> <Td> <Tr> <Td> <Td> </Table> </Form> </Center> </Body> </Html> Instrucciones
web con PHP '
3er. valor <Input Type="Text" <Input <Input
Name="valor3">
Type="SubMit" Value="Enviar"> Type="Reset" Value="Cancelar">
del documento MayorMenor.Php
<? //Almacena en variables los valores ingresados $Valor1 =$_POST['valor1 ']; $Valor2=$_POST['valor2']; $Valor3=$_POST['valor3']; //Pregunta si los numeras son iguales lf({$\faJQr'l.:::=$Yator2) ANO ($Valor2==$Valor3)) $1guales=True; } Else { lf ($Valor1 >$Valor2) { $Mayor=$Valor1; $Menor=$Va lor2; } Else { $Mayor=$Valor2; $Menor=$Va lor1 ; } lf ($Mayor<$Valor3) 262
} { } } ?> <Html> <Title>
<?
<? }
es: es: }
para realizar
263
Desarrollo web con PHP "
If (Condicionl ) {
Bloque de Instrucciones 1 } Elself (Condicion2) {
Bloque de Instrucciones 2 } Elself (Condicion3) { Bloque de Instrucciones 3 }
Elself (CondicionN) { Bloque de Instrucciones N } Else { Bloque de Instrucciones } Cada bloque de instrucciones se ejecuta si se cumple la condición esta blecida. El bloque de instrucciones después de Else se ejecuta cuando no se cumple ninguna condición.
Ejemplo 214 Este programa de ejemplo permite ingresar un número del 1 al 7 y muestra el nombre del día de la semana correspondiente. Se muestra un mensaje de error si se ingresa un número diferente al rango indicado. 264
en
//Almacena en variable el nĂşmero ingresado
IPHPi
Desarrollo web con PHP ' Elself ($Numero==2) $Dia="Martes"; Elself ($Numero==3) $Dia="Miercoles"; Elself ($Numero==4) $Dia=" Jueves"; Elself ($Numero==5) $Dia="Viernes"; Elself ($Numero==6) $Dia="Sabado"; Elself ($Numero==7) $Dia="Domingo"; Else $Dia="Error en el Nº ingresado" ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <H3> El día es: <?=$Dia?> </H3> </Center> </Body> </Html>
Instrucciones del documento Ejemplo214.Html. <Html> <Head> <Title> Formularios HTML con PHP </Title> </Head> <Body> 266
Capitulo 1 Páginas PHP
<Tr> <Th Colspan=2> DE LA SEMANA</TH><Br> <Tr> <Td> Ingrese un numero [17]:
</Form>
Mensaje
215 programa permite para indicar la operación ...,._...._,."''""'
r\fl"\l"'ll"'lt"H':l>C'
267
Desarrollo web con PHP "'.,,_
_
OPERACIONTS B.ÁSICAS ValorNº 01
~.~.,·--·····-·--~~····~·---···-·-~
ValorN° 02 Operación Suma
Al hacer clic en el botón Enviar se muestra el resultado con un vínculo para ·
regresar a la ventana anterior.
268
<Html> <Head>
<Form <Table> <Tr> <Th COISOâ&#x20AC;¢an==j
<Tr> <Td> <Td> <Tr> <Td>
</Table>
</Html>
269
IPHPU
Desarrollo web con PHP "
Instrucciones del documento Operaclones.Phpal cual se envían los valores ingresados: <? //Almacena en variables los números ingresados $0peracion=$_POST['operacion']; $A=$_POS1:['valor1 ']; $8=$_POST['valor2']; lf ($0peracion=="S"} $Resultado= $A + $8; El.self ($0peracion=='R'} $Resultado= $A $8; Elself ($0peracion=='M') $Resultado= $A* $8; Elself ($0peracion=='D'} $Resultado= $A I $8; ?> <Html> <Head> <Title> Resultados </Title> </Head> <8ody> <Center> <H3> El Resultado es: <?=$Resultado?> </H3> <A HREF=';Ejemplo215.html"> Regresar </A> </Center> </8ody> </Html> En las siguientes instrucciones se ha modificado el documento Operaciones. Php. Si no se ingresan los dos valores y se elige la operación, se redirec ciona a la pagina Mensaje.Php que muestra el mensaje de error.
270
<?
{
Elself ($0peracion=='M') Elseif ($0peraeion=='D')
I
<Head> </Head> <Body> <Center> <H3> El Resultado es : <?=$Resultado?> </H.3> ยก..,ยกioi"'lroc'!'.lr </A> </Center> </Html> <Html> 271
!IPHPf l
Desarrollo web con PHP ' <Head> <Title> Mensaje al Usuario </Title> </Head> <body> <Center> <Font Size=6> Los datos no se han ingresado correctamente </Font> <Br> <Hr> <Br> <A HREF="Ejemplo215.html"> Regresar <JA> </Center> </body> </Html>
Los datos no se han ingresado correctamente ·"'
Re gres.ar
Ejemplo 216 Este programa permite ingresar el nombre de un producto, su precio uni tario y cantidad vendida. También se debe seleccionar un porcentaje de
272
El usuario tambiĂŠn el l"'ile>.n'tn
Enel
Desarrollo
web con PHP '
Como en los casos anteriores, si no se ingresan los datos correctos redirecciona a una pagina para mostrar un mensaje.
Instrucciones del documento
U.U" ...
'""""
<Htrnl> <Head> <Title> Registro de Ventas </Title> </Head> <Body> <Center> 274
se
<Tr>
<Tr> <Td> <Td> <Tr> <Td> <Td> <Tr> <Td>
</Table> <Center>
</Form>
</Html> <?
275
Desarrollo web con PHP ' { header ("Location: mensaje.php"); Exit; } //Almacena en variables los datos ingresados $producto=$ _POST[' producto']; $precio=$_POST['precio']; $cantidad=$_POST['cantidad']; $descuento=$_POST['descuento']; //Calcula el total de la venta $venta=$precio * $cantidad; //Obtiene el descuento en porcentaje lf ($descuento== 1) $dporcentaje=O; Elself ($descuento==2) $dporcentaje!:::1O; Elself ($descuento==3) $dporcentaje=20; Else $dporcentaje=30; //calcula el descuento el soles $dsoles=$venta * $dporcentaje / 100; //Calcula el total de la venta $pago=$venta $dsoles; ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <Table Border=3> <TH Colspan=2> RESULTADO DE LA VENTA <TR>
276
..:
<TR> <TO> Cantidad
<TR>
</A>
277
UPHPll
Desarrollo web con PHP " <Font Size=d> Los datos no se han ingresado correctamente </Font> <Hr> <A HREF="Ejemplo216.html"> Regresar </A> </Center> </body> </Html>
Ejemplo 217 Este programa es similar al anterior, se diferencian porque aquí se agrega un check box para que el usuario indique si desea mostrar el total a pagar en soles y en dólares. Este programa considera el tipo de cambio a SI. 3.20.
REGISTRAR VENTAS Producto Cantidad Descuento Sin Descuento 10% 20% 30% ~ Mostrar el total en Soles y Dolares
Calclllar
278
Lf\.nularJ
Si el usuario activa la casilla â&#x20AC;˘ .,.,.,,.,.11'.,,,""',,..
,,,.,....,..,,.,,,..,., de
,-,..c,.-r\lr.in
se muestra el
,...,.,..,,n.,.,-,,,,...
muestran los resultados
Como en los casos anteriores, si no se ingresan los datos correctos se redirecciona a una para mostrar un mensaje.
2.79
Desarrollo web con PHP """""
.....
Instrucciones del documento Ejemplo217.html. <Html> <Head> <Title> Registro de Ventas <mtle> </Head> <Body> <Center> <Form Action="TotalPagoB.php" Method="Post"> <Table> <Tr> <Th Colspan=3> REGISTRAR VENTAS<lTH> <Tr> <T d> Producto <Td> <Input Type="Text" Name="producto"> <Tr> <Td> Precio Unitario <Td> <Input Type='Text" Name="precio"> <Tr> <T d> Cantidad <Td> <Input Type="Text" Name="cantidad"> <Tr> <Td> <Td> Descuento <Br> <Input Type="Radio" Name="descuento" Value="1" Checked> Sin Descuento<Br> <Input Type="Radio" Name="descuento" Value="2"> 1 Oo/o<Br> <Input Type="Radio" Name="descuento" Value="3"> 20%<Br> ~ <Input Type="Radio" Name="descuento" Value="4"> 30%<Br>
280
<Tr> '"''""'"'"'"'
.... "" .. l'\!".3mo,~"r'fn1â&#x20AC;˘3roc:Â"
w r:.... '.::~--"'": .........
Mostrar el
total en Soles y Dolares <T d Colspan=3> <Input Type=Reset" Value="Anular"> </Form> </Body> </Html> Instrucciones del documento
TotalPagoB.Php.
<? //Pregunta si algun valor no ha sido enviado lf Empty($_POST['cantidad'l)) { header ("Location: mensaje.php"); } ,...,,..,...,,,...'"" ..'"" en
los
$producto=$ _POST['prod ucto']:
$descuento=$_ POST['descuento']; //Calcula el total de la venta //Obtiene el descuento en porcentaje lf ) $d por ce ntaje=O;
IPHP11
Desarrollo web con PHP "'.....__ Elself ($descuento==2) $dporcentaje=1 O; Elself ($descuento==3) $dporcentaje=20; Else $dporcentaje=30; //calcula el descuento el soles $dsoles=$venta * $dporcentaje / 100; //Calcula el total de la venta $pago=$venta $dsoles; ?> <Htrnl> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <Table Border=3> <TH Colspan=2> RESULTADO DE LA VENTA <TR> <TO> Producto <TD><?=$producto?> <TR> <TO> Precio · <TD><?=$precio?> <TR> <TD> Cantidad <TD><?=$cantidad?> <TR> <TO> Total Venta <TD><?=$venta?>
282
_
<TR> <TR>
<TR>
{ ?>
<TD <A </A>
</Table> </Html>
los
Desarrollo
web con PHP '......__
_
REGISTRAR J\·Lr\TRJCULA Apellidos
~···---··-··-···"""·----·····~---··,.····--"''""~
Nombres Edad Deporte ~ Futbol (120.00) O Voley (80. 00) D Karate (70. 00) ~ Natación (90.00)
El alumno se puede matricular en varios cursos. Cada uno de los cursos tiene un precio los cuales se suman para saber cuanto debe pagar el alumno. Si el alumno desea pagar al crédito se le incrementa el 20% en su pago.
En la siguiente ventana se muestra el resultado de la página anterior:
284
___________________
__,/ . Capitulo 2 Páginas PHP
'<Title> Registro de Matrículas
<Center> <Forrn Action=Recibo.php" Method=Post"> <Table> <Tr>
IPHPl
Desarrollo web con PHP " <Th Colspan=3> REGISTRAR MATRICULA</TH> <Tr> <Td> Apellidos <Td> <Input Type="Text" Name="apellidos"> <Tr> <Td> Nombres <Td> <Input Type="Text" Name="nombres"> <Tr> <Td> Edad <Td> <Input Type="Text" Name="edad"> <Tr> <Td> <Td> Deporte <Br> <Input Type="Checkbox" Name="futbol" Value="si"> Futbol (120.00)<Br> <Input Type="Checkbox" Name="voley" Value="si"> Voley (80.00)<Br> <Input Type="Checkbox" Name="karate" Value="si"> Karate (70.00)<Br> <Input Type="Checkbox" Name="natacion" Value="si"> Natación (90.00)<Br> <Tr Align="Center"> <Td Colspan=3> Forma de pago<br> <Input Type="Radio" Name="pago" Value="contado"> Contado <Input Type="Radio" Name="pago" Value="credito"> Credito <Tr ALIGN=CENTER> <Td Colspan=B> <Input Type="SubMit" Value="Emitir Recibo"> <Input Type="Reset" Value="Anular"> </Table> </Form> <Center>
286
</Body> Instrucciones de! documento <?
$nombres=$_POST['nombres'J;
//Almacena la edad y le concatena la palabra Años. "Años"; //Lee los cursos $f=$ _POST['futbol']; $v=$ _POST['voley']; $n=$_POST['natacion']; //Lee la forma de paga //Calcula el monto por los cursos $total=O;
lf ($v=="si") $total+=80; lf ft;r'!,,".1"\
$total+=70; lf ($n=="sn //Pregunta si hay recargo lf ($tipopago=="credito") srscarco=xtotat * / 100; $recargo=O;
IPHP,
Desarrollo web con PHP ' //Calcula el total a pagar $pago=$total +$recargo; ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <Table Border=3> <TH Colspan=2> BOLETA DE PAGO <TR> <TD>Alumno <TD><?=$alumno?> <TR> <TO> Edad <TD><?=$edad?> <TR> <TO> Total <TD><?=$total?> <TR> <TO> Recargo (20%) <TD><?=$recargo?> <TR> <TO> Total a Pagar S/. <TD><?=$pago?> <TR> <TO Colspan=2 Align="Center"> <A HREF="Ejemplo218.html"> Regresar </A> </Table>
1
288
</Center> </Body> </Htrnl> En la ventana de se muestra cuando se elige Contado en la forma de
el recargo es
O
219 se ,...,... .... ,..,...,. .,. cuando se
no se
289
Desarrollo web con PHP "'
REGISTRA.R JVIATRICULA Apellidos Cesteñede Pachaco Nombres
¡,,,,,
,,
Edad Deporte D Futbol (120.00) ~ Voley (80. 00) ~ Karate (70.00) ~ Natación (90.00)
En la siguiente ventana se muestra la página ReciboB.Php sin la fila Total ni Recargo porque el pago es al contado:
290
<Head>
</Title> <Body>
<Table> <Tr> <Th Crn!srn=m==:S>
.:.;Tr> <Td> ADi9lliC10S <Td> <Input Type="Texf' Name="apellidos"> <Tr> <Td> l'.lr..mnroc <Td> <Input Type=Text" Name="nombres"> <Tr> <Td> <Td> <Input Type="Text" Name="edad"> <Tr> <Td> <Td> Deporte <Br> <Input (120.00)<Br> (80.00}<Br> <Input Type="Checkbox" Name="karate" Value="si'1:::Karate <Input Type="Checkbox" Name="natacion" Value="si"> Natación (90.00)<Br> 291
<Tr Align="Center"> <Td , ,.,,,_..,.....,,..,., Forma de pago<br> <Input Type="Radio"
Name="pago"
<Input Type="Radio"
Value="contado"> Value="credito">
<Tr AUGN=CENTER> <Td Colspan=3> <Input Type="SubMit"
Value=Emitir
Recibo">
<Input </Table> </Form> </Body> </Html>
<? //Almacena
en variables
los datos ingresados
$apellidos=$_POST['apellidos']; $nombres=$ //Concatena //Almacena
POST['nombres']; los apellidos y nombres la edad y le concatena
$edad=$_POST['edad']." los cursos $f=$ _POST['futbol']; $v=$_POST['voley'];
//Lee la forma de paga
$totai=O;
Años";
la palabra Años.
Contado Crédito
$total+=70;
?> <Html> <Head> <Title> </Title>
<TH Colspan=2>
BOLETA DE PAGO
<TD>Alumno <TR> <TD><?=$edad; //Pregunta si recargo lf ($tipopago=="credito") { ?> <TR>
$recargo=$total * 20 / 100;
...., .... ,..., .... , . . . el
a
$total+=$recargo; ?> 293
IPHP¡
Desarrollo web con PHP "" <TR> <TO> Recargo (20%) <TO><?=$recargo; } ?> <TR> <TO> Total a Pagar S/. <TO><?=$total?> <TR> <TO Colspan=2 Align="Center"><A H REF="Ejemplo219. html">Regresar</ A> </Table> </Center> </Body> </Html> Los siguientes datos se mostrarían si el pago es al crédito donde se incluye la fila Total y Recargo.
294
Ejemplo 220 notas
un alumno.
o
Ejemplo de la ejecución de la aplicación:
REGISTRAR NOTAS Alumno
Davila
Nota N° 02 Cancelar
, ; ,_. ,_ ;. ,~~~·····: ~.,,;_, ., : . ~ ·1 !NOTAS DEL ALUlVINO.I
iAi~~ . · ~ w;;·15;;¡~·-1 ,
'. . 112 02 i16
._¡:N·;t·~ . w li?f~;¡~di~'"'.
.· I
J
!Nota N° 01
r l.
__ : . ·;·· . -r-, r••
.,
[Observación
[Aprobado
[cualidad
[Bueno
¡·····~
r~""'•'•V<V.', ....... ,.w,•N•'""'"'''•'; ... ·,;~·.·
1
296
:., .
r ...····~·····...
...... ..._,.....,_.,,_.,,.,,....,,,._.,,,,,,,.,,.,,..._............,...,,_._,,
.!:',egresar
. .-•,w,~~·,w
Instrucciones del documento Ejemplo220.Html <Html> <Head> <Title>
</Head>
<Forrn Action="Promedio.php" <Table>
Method=Post">
<Td> <Input <Tr> <Td> <Td> <Input <Tr> <Td> Nota Nยบ 02 <Tr ALIGN=CENTER>
<Input Type="Reset" Value="Cancelar"> </Table> </Form> <Center> </Body>
">
Desarrollo
web con PHP ""
Instrucciones del documento Promedio.Php <? //Almacena en variables los datos ingresados $alumno=$_POST['alumno']; $nota1 =$_POST['nota1 ']; $nota2 =$_POST[' nota2']; //Calcula el promedio $promedio=($nota1 + $nota2) I 2; //Calcula la observacion lf ($promedio>=10.5) $observacion="Aprobado"; Else $observacion="Oesprobado"; //Calcula la cualidad lf (($promedio>=O) ANO ($promedio<=5.4)) $cualidad="Pésimo"; Elself (($promedio>=5.5) ANO ($promedio<=10.4)) $cualidad="Malo"; Elself (($promedio>=10.5) ANO ($promedio<=13.4)) $cualidad="Regular"; Elself (($promedio>=13.5) ANO ($promedio<=16.4)) $cualidad="Bueno"; Elself (($promedio>=1.5) ANO ($promedio<=20)) $cualidad="Excelente"; Else $cualidad="Error"; ?> <Html> <Head> <Title> Resultados </Title> </Head>
298
<Body> <Table Border=3> <TH Colspan=2>
NOTAS
DEL ALUMNO
<TR> <TD> Alumno <TD><?=$alumno?> <TR> <TD> Nota
01
<TD><?=$nota1
?>
<TR>
02
<TO> Nota
<TD><?=$nota2?> <TR>
<TR> <TR> <TR> Colspan=2 Align="Center"> <A HREF="Ejemplo220.html"> oru·oc~:iir </A>
<!Table> </Center> </Html>
1 programa es al se se que las notas ingresadas se encuentren en el rango de O a 20.
299
Desarrollo
web con PHP ""'""
REGISTRAR NOTAS Alumno
Nota N"° 01
Los datos no se han ingresado correctamente Re:zresar
En el siguiente ejemplo se muestra error porque la segunda notas es ne gativa:
1
300
REGISTRAR NOTAS Alumno Nota Nยบ 01
el siguiente ejemplo se muestran los resultados porque ambas notas en el de O a 20.
ÍPHPU
Desarrollo web con PHP "...._
_
REGISTRi\R NOTAS Alumno Nota N'° 01
DEL ALUI\!lliO ....
!ilumno
····r
.
[Carlos
l(""º
INota N° 01
14
iObservación
!Aprobado
l
~'·"'•'"'_,,.,_,,_.,
... ,_,,....,..,,,.,,...,..,,,._,,,.,...,,,•,.,,,~·''·"'·W-W.YN.vN'>'•'
[Cualidad
<•",W•"'"'"·'-'"'.,~..._..,,,._._.-,o;.-,w.w.v-,.,
.... ,_,,,,..,.,,~,•
jBueno
Instrucciones del documento Ejemplo221.Html <Html> <Head> <Title> Registro de Notas 302
•
</Title>
</Head> <Center> <Forrn Action="PromedioB.php" Method="Post"> <Tr>
<Th Colspan=3> REGISTRAR NOTAS</TH> <Tr> <Td> Alumno <Td> <Input Type="Text" Name="alumno"> <Tr> Nยบ 01 <Td> <Input Type="Text" Name="nota1"> <Tr> Nยบ02 <Td> <Input Type="Text" Name="nota2">
<Input Type="SubMit" Value="Enviar"> <Input Value="Cancelar"> </Form> <Center> </Html>
//Almacena en variables los
$nota2 =$_POST[' nota2'];
ingresados
Desarrollo web con PHP " //Controla el rango de O a20 de las notas lf (($nota1 <O OR $nota1 >20) OR ($nota2<0 OR $nota2>20)) { Header ('Location: aviso.php'); Exit; } //Calcula el promedio $promedio=($nota1 + $nota2) / 2; //Calcula la observacion lf ($promedio>=10.5) $observacion="Aprobado"; Else $observacion =" Oesprobado"; //Calcula la cualidad lf (($promedio>=O) ANO ($promedio<=5.4 )) $cualidad="Pésimo"; Eiself (($promedio>=5.5) ANO ($promedio<=10.4 )) $cualidad="Malo"; Elself (($promedio>=10.5) ANO ($promedio<=13.4)) $cualidad="Regular"; Elself (($promedio>=13.5) ANO ($promedio<=16.4)) $cualidad="Bueno"; Elself (($promedio>=1.5) ANO ($promedio<=20)) $cualidad="Excelente"; ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> 304
DEL <TR>
<TR>
UPHPU
Desarrollo web con PHP ' </Title> </Head> <body> <Center> <Font Size=4> Los datos no se han ingresado correctamente </Font> <Hr> <A HREF="Ejemplo221.html"> Regresar </A> </Center> </body> </Html>
Los datos no se han ingresado correctamente {_
Ejemplo 222 Este programa permite ingresar el nombre de una persona, su año de nacimiento y el año actual. Cuando se hace clic en Enviar se muestra una pagina llamada Edades.Php donde se calcula y muestra la edad, la obser vación que consiste un mensaje indicando si es menor o mayor de edad y la etapa de la persona. 306
Nombre
Castillo
.AĂąo de Nacimiento
acuerdo a la
13 - 17 18 - 30 31 71- ...
Joven Anciano
En la siguiente ventana se muestra el contenido de la pĂĄgina Edades.Php los datos ingresados anteriormente:
de Edad
Instrucciones del documento Ejemplo222.Html <Html> <Head> <Title> Registro de Personas </Title> </Head> <Body> <Center> <Form Action="Edades.php" Method="Post"> <Table> <Tr> <Th Colspan=3> REGISTRAR PERSONAS</TH> 308
<Tr>
<Td> Año Actual <Tr ALIGN=CENTER> <Input Type="SubMit" Value=Enviar">
IPHPI
Desarrollo web con PHP "'"" $etapa="Niño"; Elself (($edad>=13) AND ($edad<=17)) $etapa="Adolescente"; Elself (($edad>=J 8) AND ($edad<=30)) $etapa="Joven"; Elself (($e,dad>=31) AND ($edad<=70)) $etapa="Adulto"; Elself ($edad>=71) $etapa="Ancíano"; Else $etapa="Error en los datos"; ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <Table Border=3> <TH Colspan=2> DATOS DE LA PERSONA <TR> <TD> Nombre <TD><?=$nombre?> <TR> <TD> Año de Nacimiento <TÓ><?=$anac?> <TR> <TD> Año Actual <TD><?=$aact?> <TR> <TD> Edad <TD><?=$edad?> <TR> <TD> Observación
310
__________________ ____,/ Capitulo 2 Páginas PHP
<TR> <TD><?=$etapa?> <TD Colspan=2 Align="Center"> <A HREF="Ejemplo222.html"> </A>
</Html>
El operador
? •
el temario ? se una variable debe almacenar un determinado
de una
l'\l#"\i!"m~:llniion·ta
Su sintaxis es la siguiente:
=(Condición)? "Valorl el resultado de la co ..,""'"'''"" .... si la condición es
"Valor2";
la variable Valor2.
'!:!lrr•".:lf"'~::i.n:::i
el
y
Ejemplos: muestran la
siguientes instrucciones almacenan Desaprobado.
la variable $obs
muestran la
IPHPU
Desarrollo web con PHP """ $promedio=?; $obs=($promedio>10.4? echo $obs;
"Aprobado":"Oesaprobado");
En las siguientes instrucciones del documento Edades.Php se utiliza el operador ternario ? para saber si la persona es mayor o menor de edad. <? //Almacena en variables los datos ingresados $nombre=$_POST['nombre']; $anac=$_POST['anacimiento']; $aact=$ _POST[' aactu al']; //Calcula la edad $edad=$aact $anac; //Calcula la observación con el operador Ternario $observacion = ($edad>=18)? "Mayor de Edad" : "Menor de Edad"; //Obtiene la Etapa lf (($edad>=O) ANO ($edad<=12)) $etapa="Niño"; Elself (($edad>=13) ANO ($edad<=17)) $etapa="Adolescente"; Elself (($edad>=18) ANO ($edad<=30)) $etapa="Joven"; Elself (($edad>=31) ANO ($edad<=70)) $etapa="Adulto"; · Elself ($edad>=71) $etapa="Anciano"; Else $etapa="Error en los datos"; ?> <Html> <Head> <Title> Resultados </Title> 312
</Head> <Body> <Center> <Table Border=3> <TH Colspan=2>
DATOS DE LA PERSONA
<TR> <TO> ,...,,. . ., . . . .,...,,. ,. ., <TD><?=$nombre?> <TR> <TO> Año de Nacimiento <TR> <TO> Año Actual <TD><?=$aact?> <TR> <TO> <TD><?=$edad?> <TR>
<TR> <TO> Etapa
<TO Colspan=2 Regresar
Align="Center">
<A HREF="Ejemplo222.html">
</A>
</Table> </Body> </Html>
31
IPHP!I
Desarrollo web con PHP "........
_
Ejemplo 223 Este programa permite ingresar 3 números y mostrar el número mayor utilizando el operador ternario ? .
IN"GRESO DE V..4.LORES 1er. valor 3 2do. valor 20 3er. valor
7
~----~,,·········-·,,~·.,·------·-··-·····,~--~
L~~1yi~~J L ~~~~~1~~
314
J
Instrucciones del documento Ejemplo223.Html <Htrnl> <Head> <Title> Numero </Title> </Head> <Body> <Form Action="NumeroMayor.Php" Method="Post"> <Table> <Th Colspan=2> INGRESO DE VALOR'ES</TH><Br> <Tr> 1er. <Td> <Input Type="Text" Name="valor1 "> <Tr> valor <Td> <Input <Tr> <Td> 3er. <Tr> <Td> <Input <Input </Table> </Form> </Body> </Html>
IPHP!I
Desarrollo web con PHP " Instrucciones del documento MayorMenor.Php <? //Almacena en variables los valores ingresados $Valor1 =$_POST['valor1 ']; $Valor2=$ _POST['valor2']; $Valor3=$ _POST['valor3']; //Obtiene el mayor utilizando el operador ternario $Mayor= ($Valor1 >$Valor2) ? $Valor1 : $Valor2; $Mayor= ($Mayor>$Valor3) ? $Mayor : $Valor3; ?> <Htrnl> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <H3> El Número Mayor es: <?=$Mayor?> </H3> </Center> </Body> </Html>
La instrucción Switch Esta instrucción permite ejecutar varios bloques de instrucciones según el contenido de una variable. Puede reemplazar a varías lf. Su sintaxis es la siguiente:
316
___________________
Switch { Case ler. Bloque Break; Case 2do. Bloque
Bloque break;
___,/
Capitulo 2 Páginas PHP
instrucciones 2
instrucciones
} con la crear N "".'ªC' simples. bloque de se si el valor de su Case es el de la variable utilizada en Switch Las instrucciones que después de se ejecutan cuando la variable no ninguno valores ,,..,1"11,,,......,.,"'I,,.....,. cint".l!VIC'
f"'i'"H'\rflt"'11
programa de utiliza la Switch y número del 1 al 7 de la semana correspon diente. Se muestra un mensaje de error si se ingresa un número diferente rango indicado.
DL~SDE Ingrese un numero [1-7]:
'----···---·~-'""·"--"""-~-·-·~···----·-·---·-'
En el siguiente ejemplo se muestra un mensaje de error porque el numero ingresado no esta en el rango indlcado.
318
__________
<Htrnl>
_......
___,/
Capitulo 2 Pรกginas
PHP
Desarrollo
web con PHP "......_
_
<Title> Formularios
HTML con PHP
</Title> </Head> <Body> <Center> <Form Action="NombreDia.Php"
Method="Post">
<Table> <Tr> <Th Colspan=2>
DIAS DE LA SEMANA<ffH><Br>
<Tr> <Td> Ingrese
un numero [17] :
<Td> <Input Type="Text"
Name="Numero">
<Tr align="Center"> <Td> <Input Type="SubMit"
Value="Enviar">
<Td> <Input Type="Reset"
Value="Cancelar">
<ffable> </Form> </Center> </Body> </Html> Instrucciones
del documento
NombreDia.Php
<? //Almacena
en variable
el numero ingresado
$Numero=$_POST['Numero']; //Obtiene
el nombre
Switch ($Numero) { Case 1: $Dia="Lunes"; Break; Case 2: $Dia="Martes";
1
320
del dia de la semana
Break; Case 3: $Dia="Miercoles"; Break; Case 4: $Dia="Jueves"; Break; Case 5: Break; Case 6: Break; Case 7: Break;
Default en el Break;
}
<Head> <Title> Resultados <mtle> <Body> <Center> es: </Center> </Body>
Este programa de ejemplo permite seleccionar una opción desde una lista desplegable y mostrar en una página Php el resultado de la opción selec
cionada. Para saber la opción seleccionada se utiliza
OPCIONES DISPONIBLES Meses del Año
OPCIONES DISPONIBLES
Dia.s de la. semana O e p ertern e nto s Estaciones
322
En el
323
http: lllocalhost/ Acciones, Php
[Lunes ·lJvírutes 'Miercoles llueves !Viernes IS abado !Domingo Regresar
En el siguiente ejemplo se ha elegido Departamentos: http: / llocalhost/ Acciones.
!n;p·~;t~-¡~~ntos e··
[Tumbes !Piura !Lambayeque !Amazonas lcajamarca !La libertad
[Lima Regresar
324
En el siguiente
ejemplo se ha elegido Estaciones:
<Htrnl> <Head> Formularios HTML con PHP </Titfe> </Head> <Body> <Center> <Form <Tr align="Center">
<Th> OPCIONES DISPONIBLES </TH> <Tr align="Center"> <Td> <Select Name="Elementos"> <Option Value="Meses"> Meses del Año <Option Value="Dias"> Dias de la semana <Option Value="Departamentos"> Departamentos <Option Value="Estaciones"> Estaciones </Select> <Tr align="Center"> <Td> <Input Type="SubMit" Vaiue="Mostrar"> <Input Type="Reset" Value="Cancelar"> </Table> </Form> </Center> </Body> </Html>
Instrucciones del documento Acciones.Php <? //Almacena en variable el valor de la opción seleccionada $Elementos=$_POST['Elementos']; //Muestra los datos según la opción seleccionada ?> <Html> <Head> <Title> Resultados </TiUe> </Head> <Body> <? 326
___________________
__,/ Capitulo 2 Páginas PHP
($Elementos) { Case ?> <Table Border=4 align="Center"> <Tr> <Th> Meses Año
Enero <Br> Febrero <Br> Marzo <Br> Abril <Br> Mayo <Br>
Agosto <Br> Setiembre <Br> Octubre <Br> Noviembre
<A </Table> <? Break; "Días": ?> <Table
1-1 ....... r1 ...... ,.
<Tr> <Th> Días de la Semana
Desarrollo web con PHP "Â..._
_
<Tr> <Td> Lunes Martes <Br> Miercoles
<Br>
Jueves <Br> Viernes
<Br>
Sabado <Br> Domingo
<Br>
<Tr align="Center"> <Td Align="Center">
<A HREF="Ejemplo225.html">
Regresar
</A>
Regresar
</A>
</Table> <? Break; Case "Departamentos": ?> <Table Border=4
align="Center">
<Tr> <Th> Departamentos <Tr> <Id> Tumbes <Br> Piura <Br> Lambayeque Amazonas
<Br> <Br>
Cajamarca
<Br>
La libertad
<Br>
Lima <Br> <Tr align="Center"> <TdAlign="Center"> </Table> <? Break; 328
<A HREF="Ejemplo225.html">
___________________
__,/
Capitulo
2 Páginas PHP
?> <Table Border=4 align="Center"> <Tr> <Th> Estaciones del Año <Tr> <Td> Verano <Br> Otoño invierno <Br> Primavera <Br> <Tr align="Center"> <Td Align="Center"> <A HREF="Ejemplo225.html">
</A>
"Estaciones":
} ?> </Body>
i instrucción crear bucles un programa es cutar una o mas instrucciones un número determinado de veces.
eje
sintaxis es la
For { Instrucción( es); }
329
Lo que va después de For es la forma cómo controlar la ejecución del bucle:
Variable = Valor La variable es aquella que va a controlar el bucle y en esta parte se le debe asignar un valor inicial a partir del se empezará a contabilizar la cantidad de iteraciones o ejecuciones de las instrucciones.
La condición se utiliza para controlar la finalización del bucle. Las instruc ciones se ejecutan mientras que se cumple la condición.
Incremento El incremento se utiliza para indicar cómo se debe ir incrementando o dis minuyendo la variable que controla la ejecución del bucle. En el siguiente ejemplo el bucle está controlado por la variable $a y se ejecu tará mientras su valor sea menor o igual a 1 O. Cada vez que se ejecutan las instrucciones del bucle el valor de la variable $a se incrementará en 1.
For ($a= 1; $a<= 1 O; $a++) { Instrucción( es); } En el ejemplo anterior, las instrucciones del bucle se ejecutarán 1 O veces, según los valores escritos después de For y los valores que tendrá la va riable $a durante la ejecución del bucle serán los siquientes;
330
-
..
l 2 3 4 5 6 7
8 9
{
}
llPHPll
Desarrollo web con PHP '
8 7 6
5 4 3 2 En el siguiente ejemplo el bucle está controlado por la variable $f cuyo valor inicial es 20 y se ejecutará mientras su valor sea menor que 53. Cada vez que se ejecutan las instrucciones del bucle el valor de la variable $f disminuye en 4.
For ($f = 20; $f<53; $f+=4) {
Instrucción(es); } En el ejemplo anterior, las instrucciones del bucle se ejecutarán 9 veces, según los valores escritos después de For y los valores que tendrá la va riable $f durante la ejecución del bucle serán los siguientes:
11332
::::: ::::
Bucle W O 1 2 3 4 5 6 7 8 9 10 Bucle W 02 8765432 Bucle Nยบ 03 20 24 28 32 36 40 44 48 52
IPHPU
Desarrollo web con PHP '
Contenido del documento Ejemplo226.Php
<? echo "Bucle Nº 01"
?> <Br>
<? For($a=1; $a<=10;$a++) { echo $a." ": }
?> <Br><Br>
<? echo "Bucle Nº 02"
?> <Br>
<? For ($c=8; $c>1; $c) { echo $c." ": }
?> <Br><Br>
<? echo "Bucle Nº 03"
?> <Br>
<? For ($f=20; $f<53; $f+=4) { echo $f." "; }
?>
1
334
1
-------------------__,¡/
Capitulo 2 Páginas PHP lo cual
For (;;) { lnstrucción(es); } se crea un infinito con la finalizar el bucle. Para salir de un break.
For no se como se puede utilizar la instruc
un
Su
Break;
las se encuentran dentro para n-i·n°·.,.~.- una nueva es decir, empieza a ejecutar el bucle desde la instrucción. Su sintaxis es: 0
j
Continue;
programa de muestra los del O al 1 O con incremento de 2. Utiliza bucles infinitos y la instrucción Break para salir de bucle.
335
documento Ejemplo227.Php.
Contenido <?
echo "Bucles" ?><:Br> <? Far(;;) {echo
$a;
?> <Br>
<?
lf ($a>1 O) Break; } ?> La mayoría de páginas Web muestra la información necesario saberlas crear utilizando bucles.
336
en tablas,
es por eso
DOCTRINA.
SOCIAL
DE L•~· IGLES!;.\
vnr
3 5
X
3
P"'.
e .A
A senv•~,·~·~ la instrucción For. se en el 1, la ,...r,..,,,..,,...,,..,. vu•...;u~;:;;~a <Table> y termina con </Table>.
...
de
337
llPHPll
Desarrollo web con PHP "'
<Table> </Table> Además se pueden utilizar como por ejemplo las siguientes etiquetas con sus diferentes atributos:
<Tr>
</Tr>
Esta etiqueta permite crear una fila dentro de una tabla. Si desea crear una tabla con 1 O filas tendrá que utilizar 1 O etiquetas <Tr> </Tr>.
-rn-
«m»
Esta etiqueta se debe escribir dentro de <Tr> </Tr> y permite crear co lumnas de cabeceras, es decir, se recomienda utilizar para crear columnas dentro de la primera fila de una tabla. El texto que se muestra con esta etiqueta se muestra en el centro de la columna y en negrita.
-ra-
-rre-
Esta etiqueta permite crear dentro de una fila, columnas que contendrán datos. Si la página Web contiene columnas de cabeceras, estas etiquetas se deben utilizar a partir de la segunda fila creada con <Tr> </Tr>. También es importante recordar lo siguiente: Cuando se empieza una nueva columna (<Td> o <Th>) en forma automática se termina la creación de la columna anterior, es decir, no es necesario escribir </Td> o </Th>. Cuando se empieza una nueva fila (<Tr>) en forma automática se termina la creación de la fila, es decir, no es necesario escribir </Tr>. Solo es nec esario si se desea crear tablas anidadas.
338
Ejemplo 228 "' ... ,.... ..... ,...,,m ....
de
OIOl'"ni'"\ll"\
crea y muestra una tabla con 5 1al5.
y una co
<Htrnl>
</Head>
<? //Crear el ($a=1 { //Cierra el codigo
para
<! Crea una final > <Tr> > una <Td> <!-Abre el codigo Php y muestra el valor de la variable $a> <?=$a; } ?>
</Html> 339
de
,..,.,t"\YY"lnlr'\
crea y muestra una
con
filas y 4 colurnÂ
nas enumeradas.
El contenido del documento Ejemplo229.Php es el siguiente: <Html> <Head> <Title> Tablas con Bucles </Title> </Head> <Body> <Table Border=3> 340
{ ?> la
>
11
11
11
}
crea y muestra una canecerá y una
Instrucciones del documento Ejemplo230.Php <Html> <Head> <Title> Tablas con Bucles </Title> 342
__________________
___,/
Capitulo 2 Páginas PHP
<Tr> <lCrea la columna cabecera > Colspan=3> .,,.,,...,... .,..,,.., .... de con Bucles el bucle 8 ($a= 1 ;$a<=8;$a++) { //Cierra el codigo PHP para iniciar <!
>
<~Crea Ja 1ra > <Td><?=nColumna 1 Fila ''.$a?> < ! Crea la 2da columna > <Td><?="Columna 2 ".$a?> la ".$a; } <!Crea la ultima fila con una columna >
<Tr> Colspan=3 8 y4
</Html>
343
Este programa de ejemplo lumnas enumeradas
crea y muestra una tabla con 1 O bucles anidados:
Instrucciones del documento Ejemplo231.Php <Html> <Head> <Title> 344
y
5 co-
con Bucles </Title> </Head> <Table Border=3 Align=Center> el bucle
10
For ($a=1 ;$a<=10;$a++) { //Cierra el codigo PHP para iniciar HTML ?> <!
la
>
<Tr>
>
<! <?
5 columnas For { //Cierra el codigo para iniciar HTML ?> < ! Crea la columna y enumera> ".$a; }
//Crea el bucle para
11
11
} </Table> </Body> </Html> Ejemplo 232 Este programa es similar al anterior, se diferencian porque aquí se muestra con un de color
345
Desarrollo
web con PHP 'Â...._
Instrucciones del documento Ejemplo232.Php <Html> <Head> <Title> Tablas con Bucles </Title> </Head> <Body> 346
_
<?. //Crear el bucle para 1 O filas For { //Pregunta lf
si la
es par
% 2 ==O)
{ ?> <? } { ?> <? } //Crear el bucle para 5 columnas For ($b=1 ;$b<=5;$b++) { ?>
} } ?> </Table> </Html>
347
se muestra
<Html> <Head> <Title> _ Tablas con Bucles </Titie>
348
<Body> <Table Border=3 Align=Center> <? //Crear el bucle para 1 O filas
Far ($a=1;$a<=10;$a++) {
{
?> <Td BGCOLOR="Gray"><?="Col "
11
Fil "
else ?> ·<Td BGCOLOR="White"><?="Col ".$b." }
".$a;
} } ?>
</Html>
349
IPHP'
Desarrollo web con PHP ' Ejemplo 234 Este programa muestra la tabla de multiplicar del número 8 utilizando una sola columna:
DELN~ns 8 * 1=16 8
* 3 = 24
* 4 = 32 8 * 5 =40 8
8 * 6 = 48 8
* 7 = 56
8*8=64 8*9=72 8
í!t
10 = 80
8 * 11=88 8*12=96
Instrucciones del documento Ejemplo234.Php <Html> <Head> <Title> Tablas con Bucles
350
</Head>
<! Crear la primera fila columna
de
>
<Th> TABLA DEL Nº 08 //Crear el bucle la tabla For 2;$i++) //Obtiene el
la
>
</Html>
151
Ejemplo 235 Este programa muestra la tabla de multiplicar del columnas.
352
8 utilizando 5
<Html> <Head> <Title> Tablas con Bucles </Title> <Body> <! Crear la primera fila Crear columna
de cabecera
<Th <?
{ //Obtiene el resultado $r=$i * 8; ?>
<Td><?=º*"?> <Td><?="="?> } </Table> </Html>
> 08
Desarrollo web con PHP "Â....._
........... _
236 Este programa muestra la tabla de multiplicar del nĂşmero 8 utilizando 5 columnas y con las filas pares de color plata.
354
Instrucciones <Head> Tablas con 1...11.1.._,,"",;;i </Title> _ </Head>. <Body> Border=3 Align=Center> fa nr1rinor·'"'.'.I <Tr> <! > <Th Colspan=5> TABLA DEL Nº 08 <? //Crear el bucle para la tabla ($i=1 ;$i<=1
{
es {?> <Tr Align="Center" BGCOLOR="Silver"> <?} { Align="Center" } ?> <Td><?="8"?> <T d><?="*"?> <T d><?=$i?>
} ?> <!Table> </Body>
355
Desarrollo web con PHP "------------------
Ejemplo 237 Este programa permite ingresar un número y mostrar su tabla de multipli car.
356
<Tr> </Tr>
357
JIPHPU
Desarrollo web con PHP " <Td Colspan=2> <Input Type="Text" Name="Numero"> </Td> </Tr> <Tr> <Td> <Input Type="SubMit" Value="Enviar"> </Td> <Td> <Input Type="Reset" Value="Cancelar"> <ffd> </Tr> </Table> </Form> </Center> </Body> </Html>
Instrucciones del documento Multiplicar.Php <Html> <Head> <Title> Resultados </Title> </Head> <Body> <? /Nerifica que se haya ingresado el número lf (Empty{$_POST['Numero']))
{ hearder('Location: Mensaje.php'); Exit; } //Almacena en variable el número ingresado $numero=$_POST['Numero']; ?> <Center> <H3> Tabla de Multiplicar del Nº <?=$numero?> </H3>
358
<Table Border=3> <? for($i=1 ;$i<=12;$i++) { * $i;
lf ($i % 2
== O)
{ ?> <? }
else { ?> <? } ?> <Td Width=35><?=$numero <T d Width=35> * <Td Width=35><?=$i ?> Width=35>:::::: <Td Width=35><?=$r; } ?>
<Br> </Form> </Body> </Html>
359
UPHPU
Desarrollo web con PHP '
Ejemplo 238 Este programa permite ingresar un número y seleccionar el tipo de tabla que desea mostrar.
INGRESE UN NU1\1ERO Tabla: Suma
O Resta Mulplk.acióu
Si no se ingresa el número o selecciona el tipo de tabla se muestra un mensaje:
Los datos no se han ingresado correctamente Regresar
360
el tabla de suma:
Tabla
361
Desarrollo
web con PHP "
Instrucciones del documento Ejemplo238.Html <Html> <Head> <Title> Formularios HTML con PHP </Title> </Head> <Body> <Center> <Form Action="MostrarTabla.Php" Method="Post"> <Table> <Tr> <Th Colspan=2> INGRESE UN NUMERO <Tr> <Td Colspan=2> <Input Type='Text" Name="numero"> <Tr> <Td Colspan=2> Tabla:<Br> <Input Type="Radio" Name="tabla" Value="suma">Suma<Br> <Input Type="Radio" Name="tabla" Value="resta">Resta<Br> <Input Type="Radio" Name="tabla" Value="multiplica">Mulplica<Br> <Input Type="Radio" Name="tabla" Value="divide">División<Br> <Tr> <Td> <Input Type="SubMit" Value="Enviar"> </Td> <Td> <Input Type="Reset" Value="Cancelar"> </Td> </Tr> </Table> </Form> </Center> </Body> </Html>
362
} tabla
{
363
Desarrollo web con PHP ' el resultado y el signo a utilizar según la tabla elegida Switch ($tipo) { Case "suma": $r=$numero + $i; $signo="+"; Break; Case "resta": $r=$numero $i; $signo=""; Break; Case "multiplica": $r=$numero * $i; $signo="*"; Break; Case "divide": $r=$numero I $i; $signo="/"; Break; } lf ($i % 2 == O) { ?> <Tr Align="Center" BGCOLOR="Silver"> <? } else { ?> <Tr Align="Center" BGCOLOR="White"> <? } ?> <Td Width=35><?=$numero ?> <Td Width=35><?=$signo ?> <Td Width=35><?=$i ?> <Td Width=35> = //Obtiene
364
<Td Width=35><?=$r; } ?> <rfable>
</Center> </Body> </Html>
ejemplo permite mostrar la tabla de un número desde un
Número Inicio
Fin Tabla:
Suma (()Resta (!)División
Si no se ingresa algun valor o selecciona el tipo de tabla se muestra un
365
UPHPU
Desarrollo web con PHP '.. . . .
_
En el siguiente ejemplo se ha elegido la tabla de Suma para el número 50 desde el 20 hasta el 30.
Tabla del Nº 50
366
<Head> con
</Title>
<Body> <Forrn Action="MostrarTablaB.Php" Method=Post">
<Td>Número <Tr> <Td>lnicio <Tr>
<Tr> Tabla:<Br> <Input Type=Radio" Name="tabla" Value="suma">Suma<Br> <Input Type="Radio" Name="tabla" Value="multiplica">Mulplica<Br> <Input Type=Radío" Name=rtabla" Value="divide">División<Br> Align="Center"> <Td> <Input Type="SubMit" Value="Enviar"> </Td> ~nl'"Ol:u•"".> </T d> </Tr> </Table> </Form> 367
llPHPJI
Desarrollo web con PHP ,,___
_
</Center> </Body> </Html> Instrucciones
del documento
MostrarTablaB.Php
<? /Nerifica el envio correcto de los datos lf (Empty($_POST['numero']) OR Empty($_POST['inicio']) OR Empty($_POST['fin']) OR Empty($_POST['tabla']) { header('Location: Mensaje.php'); Exit;} $numero=$_POST['numero']; $inicio=$_ POST['inicio']; $final=$_POST['fin']; $tipo=$ _POST['tabla']; ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <H3> Tabla del Nº <?=$numero?> </H3> <Table Border=3> <? for($i=$inicio;$i<=$final;$i++)
{ //Obtiene el resultado y el signo a utilizar según la tabla elegida Switch ($tipo) { Case "suma": $r=$numero + $i; $signo="+"; Break; Case "resta": $r=$numero $i; $signo=""; Break; Case "multiplica": 368
I~j
sJ
)
__________
,__
_...../
Capitulo 2 Páginas PHP
* $signo="*"; Break; Case "divide":
l $i; $signo="/"; Break; } lf ($i % 2 == { <? } { <Tr Align="Center" ~~~~~· <? } ?> <Td Width=35><?=$numem
,., .,.,~··..,,
<T d Width=35><?=$i <Td Width=35>
=
} ?> </Table> <A HREF="Ejemplo239.html"> </Form> </Center>
8./'cu"'lrroc~r
</Html>
369
Desarrollo web con PHP '....._
_
hile
La instrucción
Esta instrucción tambien permite crear bucles dentro de un programa en Php. Tiene dos sintaxis: While (Condición) { lnstrucción(es); }
Do { lnstrucción(es); } While (Condición)
Con la instrucción While las instrucciones del bucle se ejecutan mientras la condición se cumpla. La diferencia entre While y Do While es que cuando se utiliza While las instrucciones del bucle puede que no se ejecuten ninguna vez mientras que cuando se utiliza Do While las instrucciones se ejecutan por lo menos una vez. Ejemplo 240 Este programa muestra los números pares del 2 al 20 utilizando la instruc ción While.
1
370
<Html> <Head> </Head> <Body>
{ ?>
<?=$a; $a=$a+2;}
</Table>
</Html>
programa muestra los numeras del 1 al 5 While.
371
IPHPll
Desarrollo web con PHP ""
<Html> <Head> <Title> Bucle Do While </Title> </Head> <Body> <Table Border=4> <Th> Bucle Do While <? $a=1; Do
{ ?> <Tr> <Td Align="Center"> <?=$a; $a=$a+1; } While {$a<=5) ?> </Table> </Body> </Html>
Ejemplo 242 Este programa permite ingresar un número la instrucción Do While.
11
372
y mostrar su factorial utilizando
f
lPHPJI
Desarrollo web con PHP ' Formularios HTML con PHP <!Title> </Head> <Body> <Center> <Form Action="Factorial.Php" Method="Post"> <Table> <Tr> <Th Colspan=2> INGRESE UN NUMERO <!TH> <!Tr> <Tr> <Td Colspan=2> <Input Type="Text" Name="Numero"> <!Td> </Tr> <Tr> <Td> <Input Type="SubMit" Value="Enviar"> <!Td> <Td> <Input Type="Reset" Value="Cancelar"> <!Td> <!Tr> <!Table> </Form> </Center> </Body> </Html>
Instrucciones
del documento
Factorlal.Php
<? /Nerifica que se haya ingresado el número lf {Empty{$_POST['Numero'])) { header{'Location: Mensaje.php'); Exit; } //Almacena en variable el número ingresado $numero=$_POST['Numero']; 374
$factorial=1; do { $n++; ?> <Head> Resultados </Head>
<Br> <A H~tEF:=,'''IEiemolo242.
Regresar </A>
</Center> </Html>
Funciones es un con un nombre determinado que podemos llamar desde cualquier parte de nuestro programa y que nos un valor. nos a el """""'",..,... usado en un programa PHP. Para crear una funciĂłn debemos utilizar la ll"\Or'm!1~0
r!,Cl\#1""'\BH<:::uÂ
375
llPHPll
Desarrollo web con PHP " siguiente sintaxis: Function Nombre (Variables) { lnstrucción(es) de la Función Return Valor de Retorno; } Las variables son opcionales y se usan para almacenar los valores que se le pueden enviar a la función. Dentro de la función se puede escribir cualquier tipo de instrucción Php y el valor de retorno es normalmente una variable o expresión que contiene el valor que la función debe devolver al programa desde donde fui llamada. La siguiente función de ejemplo llamada Suma recibe como parámetro 2 números y devuelve la suma de ambos números. Function Suma($a,$b) { $c=$a+$b; Return $c; }
La siguiente instrucción llama a la función Suma y le envia los dos valores como argumentos: $r=Suma(10,3); Ejemplo 243 Este programa permite ingresar dos numeres y mostrar el resultado de la multiplicación utilizando una función.
376
1 er. Valor
Instrucciones del documento Ejemplo243.Html <Htrnl>
377
IPHPil
Desarrollo web con PHP " Funciones </Title> </Head> <Body> <Center> <Form Action="Multiplica.Php" Method="Post"> <Table> <Tr> <Td> 1 er. Valor <Td> <Input Type="Text" Name="valor1 "> <Tr> <Td> 2do. Valor <Td> <Input Type='Text" Name="valor2"> <Tr Align="Center"> <Td Colspan=2> <Input Type="SubMit" Value="Enviar"> <Input Type="Reset" Value="Cancelar"> </Table> </Form> </Center> </Body> </Html>
Instrucciones del documento Multiplica.Php <? //Almacena en variables los valores ingresados $a=$_POST['valor1 ']; $b=$ _POST['valor2']; $c=Multiplica($a,$b); Function Multiplica($v1 ,$v2) { $r=$v1 * $v2; Return $r;
378
}
<Head> <Title>
</Head> <Body> <Table Border=3> Colspan=2> <TO> Valor 1 <TO><?=$a?> <TO> Valor2 <TD><?=$b?> MultiplicaciĂłn <TO Width=25><?=$c?>
<A HREF="Ejemplo243.html"> </Table>
Regresar </A>
</Body> </Html>
Este programa permite ingresar un nĂşmero y mostrar su factorial utilizando una
Factorial
5 es:
Instrucciones del documento Ejemplo244.Html <Html> <Head> 380
}
IPHPU
Desarrollo web con PHP "~ { $f=1; For($n=1 ;$n<=$num;$n++) { $f = $f * $n; } return $f; } ?> <Html> <Head> <Title> Resultados </Title> </Head> <Body> <Center> <H3><?="EI Factorial de ".$numero." es: ".Factorial($numero)?> <A HREF="Ejemplo244.html"> Regresar </A> </Form> </Center> </Body> </Html>
</H3>
Arrays Una array es una variable que puede almacenar varios elementos a la vez utilizando una clave o indice. Los arrays se pueden crear con una o mas dimensiones. Para crear un array unidimensional se puede utilizar la siguiente sintaxis: Variable= Array(Elemento1, Elemento2, ... ElementoN);
382
cin·tnvic
al crear el
solo se indican los elemen se O (cero).
Oh'Y"'l".li"'.C'11'"\''.:lli'" El indice de cada uno de tos que en forma automática. indice del primer elemento es
Ejemplo:
La
crea un nombres de las estaciones
4 el
1 2
Invierno
3
~·~~Is para crear un array en PHP es la siguiente donde se puede elementos: Variabie[lndice]=Valor; Variable Es el nombre que
383
llPHPÍI
Desarrollo web con PHP ' Valor Es el elemento que desea almacenar en el Array. Ejemplo, las siguientes instrucciones crean un array llamado dias con 7 elementos que son los dias de la semana: $dias[ 1 ]="Lunes"; $dias[2]="Martes"; $dias[3]="Miercoles"; $dias[4]="Jueves"; $dias[5]="Viernes"; $dias[6]="Sabado"; $dias[7]="Domingo"; Las instrucciones tambien crean un array llamado dias con 7 elementos que son los dias de la semana, pero usando un texto en cada uno de los indices: $dias["primero"]="Lunes"; $dias["segundo"]="Martes"; $d ias["tercero "]="M iercoles"; $dias["cuarto"]="Jueves"; $dias["quinto"]="Viernes"; $dias["sexto"]="Sabado"; $dias["setimo"]="Domingo"; Otra sintaxis para crear un array en PHP es la siguientes: Variable=array( 1 ndice=> Valor, 1 ndíce=> Valor, 1 ndice=> Valor); Ejemplo: La siguiente instrucción crea un array llamado estac con 4 elementos que son las estaciones del año: $estac=array( 1 =>"Verano" ,2=>"0toño" ,3=>"1nvierno" ,4=>"Primavera"); Ejemplo 245 Este programa crea y muestra los dos arrays anteriores sin asignar explí citamente un indice a cada elemento:
u 384
Primer Arrays
Lunes Martes Miercoles Jueves. Viernes
Segundo Verano OtoĂąo Invierno Primavera
<? <Br>";
o"," Domingo"); primer array { echo $dias[$i]."<Br>";
385
Desarrollo
web con PHP "...._
_
echo "<Br>Segundo Arrays <Br>"; //Crea el segundo array $estac=Array("Verano","Otoño","lnvierno", "Primavera"); //Muestra el contenido del segundo array far ($i=O;$i<=3;$i++) { echo $estac[$i]. "<Br>"; } ?> Ejemplo 246 Este programa crear y muestra los dos arrays anteriores asignado a cada elemento.
Primer Arrays
Lunes Martes Miercoles
Jueves Vi emes Sabado Domingo
Segundo Arrays Verano Otoño Invierno
Primavera.
386
un indice
$dias[2]="Martes
11;
$dias[7]="Domingo"; el .............. 'l',,_,....,n,.., {
<Br>";
11
} "<BrSequndo <Br>"; el $estac=array(1 =>"Verano" ,2=>"0toño" ,3=>"1nviemo" ,4=>"Primavera");
{ "<Br>"; }
41
1 instrucción permite recorrer los elementos de un acc:em3r a
387
Desarrollo web con PHP ' Foreach(Nombre del Array As Variable) { lnstrucción(es); } Nombre del Array ; Es el nombre del array que ha creado sin especificar explícitamente el indice para cada uno de sus elementos. Variable Es la variable donde se almacenará uno a uno los elementos del array a medida que se van recorriendo con la instrucción Foreach. lnstruccióníes) Es la instrucción o instrucción que desea ejecutar cada vez que se lee un elemento del array. Ejemplo: Foreach ($días As $nombre) {echo $nombre."<~~~"; } · La sintaxis para recorrer los elementos de un array creados especificando el indice para cada uno de sus elementos es la siguiente: Foreach(Nombre del Array As Variable1 => Variable2) { lnstrucción(es); }
11
388
vez
"<Br>";
se
Instrucciones
del documento
Ejemplo247.Php
<? echo "Estaciones del Año <Br>"; //Crea el array $estac=Array("Verano", "Otoño", "Invierno", "Primavera"); //Muestra el contenido del array Foreach ($estac As $nombre) { echo $nombre. "<Br>"; } ?> Ejemplo 248 Este programa crea un array con las estaciones del año especificando el indice para cada uno los elementos y los muestra utilizando la instrucción Foreach.
1
390
}
=
La ventaja de crear sesiones en una página PHP es que nos permite ad ministrar eficientemente la visita que cada usuario realiza al sitio Web. Los pasos para trabajar con sesiones dentro de una página PHP son los siguientes: Iniciar
o crear la sesión
Es el primer paso que se debe realizar para poder trabajar con una sesión
y para ello se utiliza la función sesslon jstartt). El uso de la función session_start() tiene las mismas restricciones que la función header(), es decir, la página debe empezar con <?y antes de utilizar la función no debe haber codigo HTML ni enviar texto a la página del cliente por ejemplo con la instrucción de lo contrario se el siguiente mensaje error:
sessíon_startO Canaot send session limíter - headers akeady sent (output started at C:\xa:mpp\l1tdocs\pmeba4 .php:2) in C:\xampp\btdocs\pn1eba4.ph11on11ne 3 """D.,. .........
Después de iniciar una sesión con la función session_start() podemos hacer uso de $Session para crear las variables que nos ayuden a almacenar la información de la sesión iniciada y al mismo tiempo administrarla. La sintaxis para crear y asignar un valor a una variable es la siguiente:
392
1
//Inicializa una sesiรณn
Desarrollo
web con PHP "
muestra un mensaje: <? //Inicializa
una sesión
session_start(); //Crea las variables $Session["Nombre"]="Juan
Jase";
$Session["ldentificacion"]; //Pregunta
si la variable $Session["Nombre"]
no tiene un valor
lf (lsSet($Session["Nombre"])==O) echo "La variable Nombre no esta inicializada"; Else echo "Nombre //Pregunta
:".$Session["Nombre"]."<Br>";
si la variable $Session["ldentificacion"]
no tiene un valor
if (lsSet($Session["ldentificacion"])==O) echo "La variable
ldentificacion
no esta inicializada";
Else echo "ldentificacion
." .$Session["ldentificacion"];
?>
Nombre :Juan Jose
La variable Identificadon no esta inida.lrizada
Identificación de una Sesión Cada vez que un usuario accede al sitio Web y se crea una sesión, PHP en forma automática le asigna una identificación. Para leer el la identificación que PHP asignó a una sesión se puede utilizar la función Session_ld(). Las siguientes instrucciones de ejemplo crean una sesión y muestra su identificación: <? //Inicializa una sesión session_start(); //Muestra la identicación de la sesión 394
echo ?> De esta manera cada usuario que visite el sitio "',,..,. .... . ..... diferente.
tendrá una
Cada vez que ejecute la página es decir, ingrese al explorador de y el se mn,C!'tl"·~I"~ una roentrncacion
ingresar importe y mostrar la suma de este se que cada usuario que se conecta tenga su propio total ya ellos su sesión independiente: ncu·miito
395
Desarrollo
web con PHP '.... . . .
_
En este programa de ejemplo se utiliza la variable predefinida devuelve el nombre el archivo PHP que se esta ejecutando. $_SERVER['PHP
_SELF']
lnstrucctones del documento Ejemplo249.Php <? //Inicia la sesion session_start(); //Almacena el Importe enviado
n 396
de PHP que
Else $totai+=$importe; de $_SESSiON['Total']=$total; <Html> en </Head>
Ingrese el Importe <Br>
.,,,....,.,_ .. 'l'"""'''t.โ ข r.i ... ....,,""_ .. ยก..,....,,. . ,..,.,rl'..,,.
..,, <Br>
<lnputType="SubMit" Value="Enviar el Importe">
//Si la variable $total ya tiene un valor, muestra su contenido
397
Desarrollo
web con PHP "
una tabla los datos de los alumnos ingresados
y si promedio.
Nombre NotaN"Ol NotaN°02
Instrucciones del documento Ejemplo250.Php <? //Inicia la sesion session_start(); //Almacena en variables los valores enviados $nombre=$_POST["nombre"]; $nota1 =$_POST["nota1 "]; $nota2=$_POST["nota2"]; //Calcula el promedio del alumno $promedio=($nota1+$nota2)12; /Nariable de sesion para la cantidad de alumnos
1
398
{
<Form
<Tr> ">
llPHPll
Desarrollo web con PHP " <Td>Nota Nº 02 <Td><lnput Type="text" Name="nota2"> <Tr> <Td Colspan=2 Align="Center"> <Input Type="SubMit" Value="Enviar"> <Input Type="Reset" Value="Cancelar"> </Form> <? //Si ya se han ingresado alumnos, muestra sus datos lf ($cantidad>O) { ?> <Table Border=3> <TR> <TH Colspan=5> Alumnos Registrados <TR> <TO>Nombre <TO>Nota Nº 01 <TO>Nota Nº 02 <TO>Promedio <? For($i=1 ;$i<=$cantidad;$i++) { ?> <TR> <TO><?=$alumno[$i][1 ]?> <TO Align="Center"><?=$alumno[$i][2]?> <TO Align="Center"><?=$alumno[$i][3]?> <TO Align="Center"><?=$alumno[$i][4]; } ?> </Table> <? } ?> </Body> </Html>
400