SlideShare una empresa de Scribd logo
1 de 5
Descargar para leer sin conexión
electrónico
contadorescontadoresyy
CorreoCorreo
u s e r s . t e c t i m e s . c o m 59
DevelopersDEVELOPERS
68
60
electrónico
64
Cómo enviar e-mails con PHP
¡La cara opuesta de ASP! Aprendé a programar en este
nuevo lenguaje y a construir aplicaciones para tu sitio web.
Por Martín Ramos Monso
E-mails desde la Web con ASP
Como si fuera poco, además de enseñarte aplicaciones
con PHP, te mostramos cómo hacer lo mismo con ASP.
Por Marcelo Ruiz
Un contador en Perl
Continuamos con la nota del número anterior y damos
los últimos retoques a nuestro contador de visitas.
Por Martín Scandroli
Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 59
DevelopersDEVELOPERS
Programando en PHP
En la actualidad, no basta sólo con tener una
página web; tampoco sirve, exclusivamente,
que ésta sea sólo “linda”. La gente está pi-
diendo más interactividad, más dinamismo y velocidad;
por lo cual es importante llevar nuestros sitios a la dimen-
sión dinámica, con el fin de aumentar tanto su tráfico de
visitantes como su utilidad.
La forma de interacción más conocida y más sencilla es un
Formulario, cualquiera sea el tipo, en donde básicamente
el usuario completará los datos que le solicitemos para lue-
go enviárnoslo y que nosotros lo procesemos. El uso de es-
te formulario puede ser tan atractivo como diverso. Con él
podremos recabar datos sobre nuestros visitantes, subir ar-
chivos a la Web (por ejemplo, banners publicitarios), reali-
zar encuestas interactivas y muchas cosas más. En síntesis:
el límite sólo es nuestra imaginación.
Una excelente herramienta para desarrollar esto y potenciar
nuestro sitio con muchísimas funciones es el lenguaje PHP,
con el cual dejamos de lado la dimensión estática de nues-
tro sitio web para pasar a realizar programas para la Red.
PHP (Hypertext Preprocessor) es un lenguaje de programa-
ción que interpreta los comandos en tiempo real (no com-
pila), ejecuta los procesos del lado del servidor (no del la-
do del cliente, como JavaScript) y va embebido con el có-
digo HTML. Además, posee otra ventaja: es gratis.
En esta nota, veremos el procesamiento de los resultados
de formularios: por ejemplo, su envío por e-mail.
A trabajar con PHP
PHP funciona mezclando el código HTML con el de PHP
en una misma página web. La inserción se realiza de mo-
do muy similar a como lo hace JavaScript: insertando el
código entre los tags <? y ?>.
Un ejemplo claro de esto sería, para el caso de una pági-
na en HTML puro:
<html>
<head>
<title>Acá ponemos el título de la página</title>
</head>
<body>
<p>Ésta es una página en HTML Puro</p>
</body>
</html>
Cómo enviar e-mails con PHP
Programando en PHPMartín Ramos Monso
mramos@infcomercial.com
u s e r s . t e c t i m e s . c o m60
PHP es un lenguaje nuevo y muy
poderoso que nos ofrece un gran
número de posibilidades para agregar
interactividad entre nuestra página y
los usuarios. En esta ocasión, Martín
Ramos Monso, un experto en PHP,
nos explica los conceptos básicos de
este lenguaje y nos enseña cómo
enviar e-mails desde páginas web.
Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 60
Para saber más
La página principal de estadísticas de CACE muestra un
u s e r s . t e c t i m e s . c o m 61
Página en PHP
En este ejemplo de página haremos una que nos imprima la
suma de dos números. Las variables que guardarán esos núme-
ros serán num_1 y num_2, y la variable que guardará el total
de la suma será “resultado”.
<html>
<head>
<title>Acá ponemos el título de la página</title>
</head>
<body>
<p>Ésta es una página en HTML y PHP</p>
<?
// con el signo // indico los comentarios
// Inicializo dos variables (num_1 y num_2)
$num_1 = 10;
$num_2 = 5;
// calculo la suma de ambos números y los guardo en
la variable resultado
$resultado = $num_1 + $num_2;
// Imprimo el resultado sin formato
echo $resultado;
// Imprimo el resultado con formato html
printf(“<p><font face=Arial size=2><u>El resultado
es</u>: <b>%s</b></font></p>”, $resultado);
?>
</body>
</html>
Notemos que el código PHP va embebido en el HTML; por lo
tanto, es muy sencillo en principio, pero se va complicando en
la medida en que uno va realizando páginas más complejas;
por ejemplo, con muchas tablas, etc. En estos casos, una vez
que ya tenemos definida cuál es la función del programa y qué
resultados va a mostrar, es recomendable proceder de la si-
guiente forma:
1) Armamos el HTML general, con datos ficticios y el forma-
to que quedará finalmente a la vista del usuario.
2) Reemplazamos los lugares donde deben ir los datos váli-
dos por las variables que contienen dichos datos, quitando los
ficticios.
Ahora que ya hemos visto las diferencias básicas, armaremos
un formulario y comenzaremos a ver el manejo de datos.
Sobre los formularios
En una primera instancia, sabemos que tenemos un formula-
rio donde introducimos datos y, luego de presionar un botón
de enviar, lo que hacemos es llamar al programa que maneja-
rá los resultados de dicho formulario. Ese tipo de programas
puede ser en PHP, PERL, ASP, etc.
Este programa recibe como parámetros los campos del formu-
lario (los visibles y los no visibles) y se ejecuta produciendo
el resultado, para lo cual fue creado. Por ejemplo, mostrar los
Figura 1. El sitio oficial de PHP en la Web. Desde aquí
podremos bajar su última versión (www.php.net).
Figura 2. Así se verá nuestro formulario de ejemplo a
medida que vayamos introduciendo los datos.
Figura 4. El mail que le enviaremos a los usuarios que
completen el formulario será similar a éste.
Figura 3. Ésta es la vista de nuestro programa luego
de que el usuario completó el formulario y presionó
[Enviar].
Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 61
DevelopersDEVELOPERSDEVELOPERS
u s e r s . t e c t i m e s . c o m62
DevelopersDEVELOPERS
<html>
<head>
<title>PHP</title>
</head>
<body>
<?if ($tipo != “enviar”){?>
<p>Por favor complete el siguiente formulario</p>
<form method=”POST” action=”formulario.php”>
<p>Nombre <input type=”text” name=”nombre”></p>
<p>Direccion <input type=”text”
name=”direccion”></p>
<p>Telefono <input type=”text”
name=”telefono”></p>
<p>E-mail <input type=”text” name=”e_mail”></p>
<p>Que hacemos <select size=”1” name=”hacemos”>
<option value=”resultados”>Mostramos los
resultados</option>
<option value=”e_mail”>Enviamos los resultados
por e-mail</option>
<option value=”ambas”>Ambas - Mostramos los
resultados y mandamos el mail</option>
</select></p>
<p><input type=”submit” value=”Enviar”
name=”B1”><input type=”reset” value=”Restablecer”
name=”B2”></p>
<input type=”hidden” name=”tipo” value=”enviar”>
</form>
<?
}
else{
// Supuestamente tengo los campos completos
// Aquí debo elegir qué hacer con los resultados
if ($hacemos == “resultados”){
?>
<p>Hemos recibido los siguientes datos</p>
<p><b><u>Nombre</u></b>: <? echo $nombre; ?></p>
<p><b><u>Dirección</u></b>: <?echo $direccion;
?></p>
<p><b><u>Teléfono</u></b>: <? echo $telefono; ?></p>
<p><b><u>E-mail</u></b>: <? echo $e_mail; ?></p>
Listado #1
resultados y enviarlos por e-mail, o guardarlos en una base de
datos, etc.
Los métodos POST y GET sirven para especificar cómo serán
enviados los parámetros al programa. El autor del formulario
selecciona el método más apropiado:
<FORM METHOD= POST ACTION = “ejemplo.php”>
<FORM METHOD= GET ACTION = “ejemplo.php”>
Armando el formulario
Comenzaremos armando un formulario básico que sirva para
introducir el nombre, la dirección y el teléfono.
Notemos que donde dice action=”......” debe ir la dirección
de nuestro programa para procesar dicho formulario. Por ejem-
plo, programa.php:
<form method=”POST” action=”http://wwwww...”>
<?
}if ($hacemos == “e_mail”){
// Para enviar un mensaje utilizamos la función
mail
$contenido = “Gracias por darse de altann”;
$contenido .= “Nombre: “ . $nombre . “n”;
$contenido .= “Direccion: “ . $direccion . “n”;
$contenido .= “Telefono: “ . $telefono . “n”;
$contenido .= “E-mail: “ . $e_mail . “n”;
$contenido .= “nnMartin”;
mail ($e_mail, “Confirmacion”, $contenido, “From:
Martin <mramos@infocomercial.com>”);
echo “El mensaje ya ha sido enviado”;}
if ($hacemos == “ambas”){
// Primero muestro los resultados
?>
<p>Hemos recibido los siguientes datos</p>
<p><b><u>Nombre</u></b>: <? echo $nombre; ?></p>
<p><b><u>Dirección</u></b>: <? echo $direccion;
?></p>
<p><b><u>Telefono</u></b>: <? echo $telefono;
?></p>
<p><b><u>E-mail</u></b>: <? echo $e_mail; ?></p>
<?
// Envio los resultados por e-mail
$contenido = “Gracias por dase de altann”;
$contenido .= “Nombre: “ . $nombre . “n”;
$contenido .= “Direccion: “ . $direccion . “n”;
$contenido .= “Telefono: “ . $telefono . “n”;
$contenido .= “E-mail: “ . $e_mail . “n”;
$contenido .= “nnMartin”;
mail ($e_mail, “Confirmacion”, $contenido, “From:
Martin <mramos@infocomercial.com>”);
echo “El mensaje ya ha sido enviado”;
}
}
?>
</body>
</html>
Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 62
u s e r s . t e c t i m e s . c o m 63
<p>Nombre y Apellido <input type=”text”
name=”nombre” size=”20”></p>
<p>Direccion <input type=”text” name=”direccion”
size=”20”></p>
<p>Telefono <input type=”text” name=”telefono”
size=”20”></p>
<p><input type=”submit” value=”Enviar”
name=”B1”><input type=”reset” value=”Restablecer”
name=”B2”></p>
<input type=”hidden” name=”tipo” value=”enviar”>
</form>
En este ejemplo hemos introducido un campo oculto, llama-
do tipo, y cuyo valor es enviar.
Generalmente, la mayoría de los formularios constan de dos
páginas: la primera es la página principal donde aparece el
formulario, y la segunda, la página o programa que procesa
sus resultados.
En nuestro ejemplo próximo, realizaremos un programa que
se ocupará de ambas funciones en una única página. El obje-
tivo es procesar los datos antes mencionados (nombre, direc-
ción, teléfono y mail) y sobre estos datos producir las siguien-
tes acciones, según la elección del usuario.
Las acciones posibles son:
• Opción 1: Mostrar los resultados.
• Opción 2: Enviar los resultados por e-mail.
• Opción 3: Realizar ambas cosas (mostrar los resultados y
enviarlos por correo electrónico).
Analizando el código
En nuestro código vemos dos secciones bien definidas se-
paradas por un condicional if. El if pregunta por si el pará-
metro tipo tiene un valor distinto (!=) de enviar. Si tiene un
valor diferente, significa que entramos en el programa por
primera vez, con lo cual lo primero que deberá mostrar es el
formulario.
Cuando el usuario complete dicho formulario y presione el
botón [Enviar], junto con los datos, enviará el parámetro
oculto que mencionamos anteriormente, llamado tipo, y el va-
lor que enviará es enviar para dicha variable.
Cuando se vuelva a ejecutar el programa “formulario.php”,
recorrerá el if principal, y entrará en el segundo segmento de
código (por el else). Ahora, la variable “tiene” como valor el
string enviar.
En este segmento de código, el programa nos vuelve a pre-
guntar, con distintos condicionales if, qué operación quere-
mos realizar (mostrar los resultados, enviarlos, etc.). Tendre-
mos un if por cada tipo de operación.
El tipo de operación es el que el usuario seleccionó previa-
mente en el formulario (en la lista desplegable), cuyo nombre
de variable es “hacemos”.
Si la operación elegida es Mostrar los resultados, entrará en
el if donde la variable “hacemos” tenga como valor el string
resultados. Si es otra, irá recorriendo los distintos if hasta en-
contrar la opción correspondiente a la selección del usuario.
Analicemos cada una de las opciones posibles:
• Opción 1: Mostrar resultados. En esta opción, simplemen-
te imprimimos, mediante el comando echo, printf o similar,
los resultados obtenidos del formulario.
• Opción 2: Enviar los resultados por e-mail. En este caso,
utilizamos la función mail de PHP, para enviar los resultados
por e-mail al destinatario. La función mail tiene la siguiente
sintaxis:
mail (para, tema, contenido, headers);
Cualquier mensaje que nosotros deseemos enviar deberá con-
tener las siguientes partes:
• Destinatario: la persona que recibirá dicho mensaje
• Tema: título del mensaje
• Contenido: el texto principal del mensaje
• Respuesta: dirección a la cual se enviarán las respuestas
a dicho mensaje
La dirección de correo electrónico del destinatario será el
campo e-mail, completado por el usuario en el formulario. El
tema del mensaje será el contenido, y la dirección de respues-
ta, la que nosotros ingresemos en el código del programa
cuando lo armemos. En este caso fueron utilizadas las si-
guientes:
• Tema: confirmación
• Contenido: armamos un string con el contenido que de-
seamos enviar. Podemos utilizar “n” para comenzar una nue-
va línea, con el fin de no ver todo el mensaje corrido, sin sal-
tos de líneas.
En esta parte, también utilizamos el punto para concatenar
el texto a los valores de las variables.
$contenido .= “Telefono: “ . $telefono . “n”;
El .= significa que la variable “contenido” será igual a su va-
lor actual más lo que continúa. Es lo mismo que poner lo si-
guiente:
$contenido = $contenido . “xxxxxxxx”;
• Respuesta: mramos@infocomercial.com. Debemos incluir un string
del tipo From: Martin <mramos@infocomercial.com>.
• Opción 3: Mostrar resultados y enviarlos por e-mail. Aquí
utilizamos los códigos escritos arriba para ambas opciones an-
teriores.
Pueden encontrar el código completo en la página 62 y en la
carpeta DEVELOPERS del CD que acompaña a esta revista.
Conclusión
Vimos cómo crear un formulario sencillo con PHP. También
vimos cómo armar el programa para procesarlo, con formulario
incluido, identificando el tipo de operación que el usuario
quiera realizar. Ya nada nos impide comenzar a experimentar
con este lenguaje y hacer, por ejemplo, el mismo formulario
para almacenar dicha información en una base de datos. Pero
bueno, eso lo dejaremos para la próxima.
Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 63

Más contenido relacionado

La actualidad más candente

La actualidad más candente (14)

Guia de repaso html11
Guia de repaso html11Guia de repaso html11
Guia de repaso html11
 
Html investigacion
Html investigacionHtml investigacion
Html investigacion
 
Retro2011ortegon
Retro2011ortegonRetro2011ortegon
Retro2011ortegon
 
INTRODUCCIÓN A LA PROGRAMACIÓN EN PHP
INTRODUCCIÓN A LA PROGRAMACIÓN EN PHPINTRODUCCIÓN A LA PROGRAMACIÓN EN PHP
INTRODUCCIÓN A LA PROGRAMACIÓN EN PHP
 
Taller de HTML
Taller de HTMLTaller de HTML
Taller de HTML
 
Curso HTML 5 & jQuery - Leccion 4
Curso HTML 5 & jQuery - Leccion 4Curso HTML 5 & jQuery - Leccion 4
Curso HTML 5 & jQuery - Leccion 4
 
Guia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSSGuia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSS
 
Retro2011ortegon
Retro2011ortegonRetro2011ortegon
Retro2011ortegon
 
Etiquetas de html
Etiquetas de htmlEtiquetas de html
Etiquetas de html
 
Curso HTML 5 & jQuery - Leccion 5
Curso HTML 5 & jQuery - Leccion 5Curso HTML 5 & jQuery - Leccion 5
Curso HTML 5 & jQuery - Leccion 5
 
ASP
ASPASP
ASP
 
Php y pdf
Php y pdfPhp y pdf
Php y pdf
 
Las etiquetas más utilizadas en html
Las etiquetas más utilizadas en htmlLas etiquetas más utilizadas en html
Las etiquetas más utilizadas en html
 
Retro2011brandon
Retro2011brandonRetro2011brandon
Retro2011brandon
 

Destacado

Destacado (8)

Monsaraz
MonsarazMonsaraz
Monsaraz
 
Agua
AguaAgua
Agua
 
โอเนต53
โอเนต53โอเนต53
โอเนต53
 
ใบกิจกรรมการเรียนรู้เรื่องสามชุก
ใบกิจกรรมการเรียนรู้เรื่องสามชุกใบกิจกรรมการเรียนรู้เรื่องสามชุก
ใบกิจกรรมการเรียนรู้เรื่องสามชุก
 
Cerrando circulos
Cerrando circulosCerrando circulos
Cerrando circulos
 
Layka
LaykaLayka
Layka
 
เฉลย
เฉลยเฉลย
เฉลย
 
ใบงานที่ 12
ใบงานที่ 12ใบงานที่ 12
ใบงานที่ 12
 

Similar a Php

PHP blog blogger blogspot
PHP blog blogger blogspotPHP blog blogger blogspot
PHP blog blogger blogspotLISSYCE
 
TAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPTAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPromimaira
 
TAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPTAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPromimaira
 
DESARROLLO-CON-PHP-pptx.pptx
DESARROLLO-CON-PHP-pptx.pptxDESARROLLO-CON-PHP-pptx.pptx
DESARROLLO-CON-PHP-pptx.pptxaudis66
 
Guia programacionwebdesarrollositiosweb
Guia programacionwebdesarrollositioswebGuia programacionwebdesarrollositiosweb
Guia programacionwebdesarrollositiosweblissette_torrealba
 
Universida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandUniversida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandlanegritabella
 
Universida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandUniversida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandlanegritabella
 

Similar a Php (20)

PHP blog blogger blogspot
PHP blog blogger blogspotPHP blog blogger blogspot
PHP blog blogger blogspot
 
TAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPTAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHP
 
TAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHPTAREA DE ORGANIZADORES GRAFICO DEL PHP
TAREA DE ORGANIZADORES GRAFICO DEL PHP
 
DESARROLLO-CON-PHP-pptx.pptx
DESARROLLO-CON-PHP-pptx.pptxDESARROLLO-CON-PHP-pptx.pptx
DESARROLLO-CON-PHP-pptx.pptx
 
Guia programacionwebdesarrollositiosweb
Guia programacionwebdesarrollositioswebGuia programacionwebdesarrollositiosweb
Guia programacionwebdesarrollositiosweb
 
Introducción a PHP
Introducción a PHPIntroducción a PHP
Introducción a PHP
 
Html investigacion
Html investigacionHtml investigacion
Html investigacion
 
Get & post
Get & postGet & post
Get & post
 
Phpgaby
PhpgabyPhpgaby
Phpgaby
 
4.Programación con PHP y MySQL
4.Programación con PHP y MySQL4.Programación con PHP y MySQL
4.Programación con PHP y MySQL
 
Manual PHP 7
Manual PHP 7Manual PHP 7
Manual PHP 7
 
Php1 sesión 6
Php1 sesión 6Php1 sesión 6
Php1 sesión 6
 
Programacion PHP
Programacion PHPProgramacion PHP
Programacion PHP
 
Phpablo
PhpabloPhpablo
Phpablo
 
Universida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandUniversida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirand
 
Universida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirandUniversida tecinca luis vargas torrez de mirand
Universida tecinca luis vargas torrez de mirand
 
Phpgaby
PhpgabyPhpgaby
Phpgaby
 
ubiPHP
ubiPHPubiPHP
ubiPHP
 
Phpgaby
PhpgabyPhpgaby
Phpgaby
 
Manual+php+básico
Manual+php+básicoManual+php+básico
Manual+php+básico
 

Más de solucionesinformaticas (20)

Cmap tools básico
Cmap tools básicoCmap tools básico
Cmap tools básico
 
C++
C++C++
C++
 
Bd relacional
Bd relacionalBd relacional
Bd relacional
 
Argo uml
Argo umlArgo uml
Argo uml
 
Arc view gis 3.1
Arc view gis 3.1Arc view gis 3.1
Arc view gis 3.1
 
Scratch
ScratchScratch
Scratch
 
Red wifi invitado v1.0
Red wifi invitado v1.0Red wifi invitado v1.0
Red wifi invitado v1.0
 
Red inalambrica imagenio
Red inalambrica imagenioRed inalambrica imagenio
Red inalambrica imagenio
 
Pseint
PseintPseint
Pseint
 
Programacion1
Programacion1Programacion1
Programacion1
 
Programacion bajo linux
Programacion bajo linuxProgramacion bajo linux
Programacion bajo linux
 
Php myadmin
Php myadminPhp myadmin
Php myadmin
 
Php bajo linux
Php bajo linuxPhp bajo linux
Php bajo linux
 
Mysql workbench en.a4
Mysql workbench en.a4Mysql workbench en.a4
Mysql workbench en.a4
 
Vb2008
Vb2008Vb2008
Vb2008
 
Sql server 7
Sql server 7Sql server 7
Sql server 7
 
Vbasic 6.0
Vbasic 6.0Vbasic 6.0
Vbasic 6.0
 
Visual basic 6
Visual basic 6Visual basic 6
Visual basic 6
 
Visual basic con access
Visual basic con accessVisual basic con access
Visual basic con access
 
Visual basic multimedia
Visual basic  multimediaVisual basic  multimedia
Visual basic multimedia
 

Último

Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionEmanuelMuoz11
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfYanitza28
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxVICTORMANUELBEASAGUI
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptxdulcemonterroza
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaJadeVilcscordova
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...axelv9257
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8antoniopalmieriluna
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORASMarc Liust
 
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendidaLuis Francisco Reyes Aceves
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxgustavovasquezv56
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfaxelv9257
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfYanitza28
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 

Último (17)

Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacion
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORAS
 
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 

Php

  • 1. electrónico contadorescontadoresyy CorreoCorreo u s e r s . t e c t i m e s . c o m 59 DevelopersDEVELOPERS 68 60 electrónico 64 Cómo enviar e-mails con PHP ¡La cara opuesta de ASP! Aprendé a programar en este nuevo lenguaje y a construir aplicaciones para tu sitio web. Por Martín Ramos Monso E-mails desde la Web con ASP Como si fuera poco, además de enseñarte aplicaciones con PHP, te mostramos cómo hacer lo mismo con ASP. Por Marcelo Ruiz Un contador en Perl Continuamos con la nota del número anterior y damos los últimos retoques a nuestro contador de visitas. Por Martín Scandroli Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 59
  • 2. DevelopersDEVELOPERS Programando en PHP En la actualidad, no basta sólo con tener una página web; tampoco sirve, exclusivamente, que ésta sea sólo “linda”. La gente está pi- diendo más interactividad, más dinamismo y velocidad; por lo cual es importante llevar nuestros sitios a la dimen- sión dinámica, con el fin de aumentar tanto su tráfico de visitantes como su utilidad. La forma de interacción más conocida y más sencilla es un Formulario, cualquiera sea el tipo, en donde básicamente el usuario completará los datos que le solicitemos para lue- go enviárnoslo y que nosotros lo procesemos. El uso de es- te formulario puede ser tan atractivo como diverso. Con él podremos recabar datos sobre nuestros visitantes, subir ar- chivos a la Web (por ejemplo, banners publicitarios), reali- zar encuestas interactivas y muchas cosas más. En síntesis: el límite sólo es nuestra imaginación. Una excelente herramienta para desarrollar esto y potenciar nuestro sitio con muchísimas funciones es el lenguaje PHP, con el cual dejamos de lado la dimensión estática de nues- tro sitio web para pasar a realizar programas para la Red. PHP (Hypertext Preprocessor) es un lenguaje de programa- ción que interpreta los comandos en tiempo real (no com- pila), ejecuta los procesos del lado del servidor (no del la- do del cliente, como JavaScript) y va embebido con el có- digo HTML. Además, posee otra ventaja: es gratis. En esta nota, veremos el procesamiento de los resultados de formularios: por ejemplo, su envío por e-mail. A trabajar con PHP PHP funciona mezclando el código HTML con el de PHP en una misma página web. La inserción se realiza de mo- do muy similar a como lo hace JavaScript: insertando el código entre los tags <? y ?>. Un ejemplo claro de esto sería, para el caso de una pági- na en HTML puro: <html> <head> <title>Acá ponemos el título de la página</title> </head> <body> <p>Ésta es una página en HTML Puro</p> </body> </html> Cómo enviar e-mails con PHP Programando en PHPMartín Ramos Monso mramos@infcomercial.com u s e r s . t e c t i m e s . c o m60 PHP es un lenguaje nuevo y muy poderoso que nos ofrece un gran número de posibilidades para agregar interactividad entre nuestra página y los usuarios. En esta ocasión, Martín Ramos Monso, un experto en PHP, nos explica los conceptos básicos de este lenguaje y nos enseña cómo enviar e-mails desde páginas web. Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 60
  • 3. Para saber más La página principal de estadísticas de CACE muestra un u s e r s . t e c t i m e s . c o m 61 Página en PHP En este ejemplo de página haremos una que nos imprima la suma de dos números. Las variables que guardarán esos núme- ros serán num_1 y num_2, y la variable que guardará el total de la suma será “resultado”. <html> <head> <title>Acá ponemos el título de la página</title> </head> <body> <p>Ésta es una página en HTML y PHP</p> <? // con el signo // indico los comentarios // Inicializo dos variables (num_1 y num_2) $num_1 = 10; $num_2 = 5; // calculo la suma de ambos números y los guardo en la variable resultado $resultado = $num_1 + $num_2; // Imprimo el resultado sin formato echo $resultado; // Imprimo el resultado con formato html printf(“<p><font face=Arial size=2><u>El resultado es</u>: <b>%s</b></font></p>”, $resultado); ?> </body> </html> Notemos que el código PHP va embebido en el HTML; por lo tanto, es muy sencillo en principio, pero se va complicando en la medida en que uno va realizando páginas más complejas; por ejemplo, con muchas tablas, etc. En estos casos, una vez que ya tenemos definida cuál es la función del programa y qué resultados va a mostrar, es recomendable proceder de la si- guiente forma: 1) Armamos el HTML general, con datos ficticios y el forma- to que quedará finalmente a la vista del usuario. 2) Reemplazamos los lugares donde deben ir los datos váli- dos por las variables que contienen dichos datos, quitando los ficticios. Ahora que ya hemos visto las diferencias básicas, armaremos un formulario y comenzaremos a ver el manejo de datos. Sobre los formularios En una primera instancia, sabemos que tenemos un formula- rio donde introducimos datos y, luego de presionar un botón de enviar, lo que hacemos es llamar al programa que maneja- rá los resultados de dicho formulario. Ese tipo de programas puede ser en PHP, PERL, ASP, etc. Este programa recibe como parámetros los campos del formu- lario (los visibles y los no visibles) y se ejecuta produciendo el resultado, para lo cual fue creado. Por ejemplo, mostrar los Figura 1. El sitio oficial de PHP en la Web. Desde aquí podremos bajar su última versión (www.php.net). Figura 2. Así se verá nuestro formulario de ejemplo a medida que vayamos introduciendo los datos. Figura 4. El mail que le enviaremos a los usuarios que completen el formulario será similar a éste. Figura 3. Ésta es la vista de nuestro programa luego de que el usuario completó el formulario y presionó [Enviar]. Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 61
  • 4. DevelopersDEVELOPERSDEVELOPERS u s e r s . t e c t i m e s . c o m62 DevelopersDEVELOPERS <html> <head> <title>PHP</title> </head> <body> <?if ($tipo != “enviar”){?> <p>Por favor complete el siguiente formulario</p> <form method=”POST” action=”formulario.php”> <p>Nombre <input type=”text” name=”nombre”></p> <p>Direccion <input type=”text” name=”direccion”></p> <p>Telefono <input type=”text” name=”telefono”></p> <p>E-mail <input type=”text” name=”e_mail”></p> <p>Que hacemos <select size=”1” name=”hacemos”> <option value=”resultados”>Mostramos los resultados</option> <option value=”e_mail”>Enviamos los resultados por e-mail</option> <option value=”ambas”>Ambas - Mostramos los resultados y mandamos el mail</option> </select></p> <p><input type=”submit” value=”Enviar” name=”B1”><input type=”reset” value=”Restablecer” name=”B2”></p> <input type=”hidden” name=”tipo” value=”enviar”> </form> <? } else{ // Supuestamente tengo los campos completos // Aquí debo elegir qué hacer con los resultados if ($hacemos == “resultados”){ ?> <p>Hemos recibido los siguientes datos</p> <p><b><u>Nombre</u></b>: <? echo $nombre; ?></p> <p><b><u>Dirección</u></b>: <?echo $direccion; ?></p> <p><b><u>Teléfono</u></b>: <? echo $telefono; ?></p> <p><b><u>E-mail</u></b>: <? echo $e_mail; ?></p> Listado #1 resultados y enviarlos por e-mail, o guardarlos en una base de datos, etc. Los métodos POST y GET sirven para especificar cómo serán enviados los parámetros al programa. El autor del formulario selecciona el método más apropiado: <FORM METHOD= POST ACTION = “ejemplo.php”> <FORM METHOD= GET ACTION = “ejemplo.php”> Armando el formulario Comenzaremos armando un formulario básico que sirva para introducir el nombre, la dirección y el teléfono. Notemos que donde dice action=”......” debe ir la dirección de nuestro programa para procesar dicho formulario. Por ejem- plo, programa.php: <form method=”POST” action=”http://wwwww...”> <? }if ($hacemos == “e_mail”){ // Para enviar un mensaje utilizamos la función mail $contenido = “Gracias por darse de altann”; $contenido .= “Nombre: “ . $nombre . “n”; $contenido .= “Direccion: “ . $direccion . “n”; $contenido .= “Telefono: “ . $telefono . “n”; $contenido .= “E-mail: “ . $e_mail . “n”; $contenido .= “nnMartin”; mail ($e_mail, “Confirmacion”, $contenido, “From: Martin <mramos@infocomercial.com>”); echo “El mensaje ya ha sido enviado”;} if ($hacemos == “ambas”){ // Primero muestro los resultados ?> <p>Hemos recibido los siguientes datos</p> <p><b><u>Nombre</u></b>: <? echo $nombre; ?></p> <p><b><u>Dirección</u></b>: <? echo $direccion; ?></p> <p><b><u>Telefono</u></b>: <? echo $telefono; ?></p> <p><b><u>E-mail</u></b>: <? echo $e_mail; ?></p> <? // Envio los resultados por e-mail $contenido = “Gracias por dase de altann”; $contenido .= “Nombre: “ . $nombre . “n”; $contenido .= “Direccion: “ . $direccion . “n”; $contenido .= “Telefono: “ . $telefono . “n”; $contenido .= “E-mail: “ . $e_mail . “n”; $contenido .= “nnMartin”; mail ($e_mail, “Confirmacion”, $contenido, “From: Martin <mramos@infocomercial.com>”); echo “El mensaje ya ha sido enviado”; } } ?> </body> </html> Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 62
  • 5. u s e r s . t e c t i m e s . c o m 63 <p>Nombre y Apellido <input type=”text” name=”nombre” size=”20”></p> <p>Direccion <input type=”text” name=”direccion” size=”20”></p> <p>Telefono <input type=”text” name=”telefono” size=”20”></p> <p><input type=”submit” value=”Enviar” name=”B1”><input type=”reset” value=”Restablecer” name=”B2”></p> <input type=”hidden” name=”tipo” value=”enviar”> </form> En este ejemplo hemos introducido un campo oculto, llama- do tipo, y cuyo valor es enviar. Generalmente, la mayoría de los formularios constan de dos páginas: la primera es la página principal donde aparece el formulario, y la segunda, la página o programa que procesa sus resultados. En nuestro ejemplo próximo, realizaremos un programa que se ocupará de ambas funciones en una única página. El obje- tivo es procesar los datos antes mencionados (nombre, direc- ción, teléfono y mail) y sobre estos datos producir las siguien- tes acciones, según la elección del usuario. Las acciones posibles son: • Opción 1: Mostrar los resultados. • Opción 2: Enviar los resultados por e-mail. • Opción 3: Realizar ambas cosas (mostrar los resultados y enviarlos por correo electrónico). Analizando el código En nuestro código vemos dos secciones bien definidas se- paradas por un condicional if. El if pregunta por si el pará- metro tipo tiene un valor distinto (!=) de enviar. Si tiene un valor diferente, significa que entramos en el programa por primera vez, con lo cual lo primero que deberá mostrar es el formulario. Cuando el usuario complete dicho formulario y presione el botón [Enviar], junto con los datos, enviará el parámetro oculto que mencionamos anteriormente, llamado tipo, y el va- lor que enviará es enviar para dicha variable. Cuando se vuelva a ejecutar el programa “formulario.php”, recorrerá el if principal, y entrará en el segundo segmento de código (por el else). Ahora, la variable “tiene” como valor el string enviar. En este segmento de código, el programa nos vuelve a pre- guntar, con distintos condicionales if, qué operación quere- mos realizar (mostrar los resultados, enviarlos, etc.). Tendre- mos un if por cada tipo de operación. El tipo de operación es el que el usuario seleccionó previa- mente en el formulario (en la lista desplegable), cuyo nombre de variable es “hacemos”. Si la operación elegida es Mostrar los resultados, entrará en el if donde la variable “hacemos” tenga como valor el string resultados. Si es otra, irá recorriendo los distintos if hasta en- contrar la opción correspondiente a la selección del usuario. Analicemos cada una de las opciones posibles: • Opción 1: Mostrar resultados. En esta opción, simplemen- te imprimimos, mediante el comando echo, printf o similar, los resultados obtenidos del formulario. • Opción 2: Enviar los resultados por e-mail. En este caso, utilizamos la función mail de PHP, para enviar los resultados por e-mail al destinatario. La función mail tiene la siguiente sintaxis: mail (para, tema, contenido, headers); Cualquier mensaje que nosotros deseemos enviar deberá con- tener las siguientes partes: • Destinatario: la persona que recibirá dicho mensaje • Tema: título del mensaje • Contenido: el texto principal del mensaje • Respuesta: dirección a la cual se enviarán las respuestas a dicho mensaje La dirección de correo electrónico del destinatario será el campo e-mail, completado por el usuario en el formulario. El tema del mensaje será el contenido, y la dirección de respues- ta, la que nosotros ingresemos en el código del programa cuando lo armemos. En este caso fueron utilizadas las si- guientes: • Tema: confirmación • Contenido: armamos un string con el contenido que de- seamos enviar. Podemos utilizar “n” para comenzar una nue- va línea, con el fin de no ver todo el mensaje corrido, sin sal- tos de líneas. En esta parte, también utilizamos el punto para concatenar el texto a los valores de las variables. $contenido .= “Telefono: “ . $telefono . “n”; El .= significa que la variable “contenido” será igual a su va- lor actual más lo que continúa. Es lo mismo que poner lo si- guiente: $contenido = $contenido . “xxxxxxxx”; • Respuesta: mramos@infocomercial.com. Debemos incluir un string del tipo From: Martin <mramos@infocomercial.com>. • Opción 3: Mostrar resultados y enviarlos por e-mail. Aquí utilizamos los códigos escritos arriba para ambas opciones an- teriores. Pueden encontrar el código completo en la página 62 y en la carpeta DEVELOPERS del CD que acompaña a esta revista. Conclusión Vimos cómo crear un formulario sencillo con PHP. También vimos cómo armar el programa para procesarlo, con formulario incluido, identificando el tipo de operación que el usuario quiera realizar. Ya nada nos impide comenzar a experimentar con este lenguaje y hacer, por ejemplo, el mismo formulario para almacenar dicha información en una base de datos. Pero bueno, eso lo dejaremos para la próxima. Developers_1_PHP_UI#5.qxd 4/4/01 1:48 PM Page 63