Saludos
PD: Si quieren sugerir algún tema para hacerlo en el taller, háganlo pero en otro post independiente, para que no se mezclen los mensajes...
|
|
#1 (permalink) |
|
$moderador{'Esteban'}
![]() ![]() |
Taller de PERL y CGI
Saludos PD: Si quieren sugerir algún tema para hacerlo en el taller, háganlo pero en otro post independiente, para que no se mezclen los mensajes...
__________________
MonoSwim Antes era fanfarrón y canchero, ahora soy perfecto !!!!!!! |
|
|
|
|
|
#2 (permalink) |
|
$moderador{'Esteban'}
![]() ![]() |
Como enviar un formulario por mail ?
Bueno, para mandar los datos de un formulario a una casilla de E-Mail podemos usar la sentencia mailto:, pero como esta sentencia de HTML se ejecuta en el cliente no es lo más recomendable ya que puede fallar, además de que los navegadores suelen mostrar mensajes de alerta de seguridad (como "va a mandar datos por la web ! puede ser peligroso !") que asustan a sus usuarios. Por estas razones esta opción queda descartada...
Ahora tenemos que ver las soluciones del lado del servidor, esto significa instalar un script para que reciba los datos del formulario y los envíe a nuestra casilla de correo...Estos scripts pueden en cualquier lenguaje de servidor como ser PERL, PHP, ASP, Java, Phyton, etc...Los más conocidos son PERL (Perl o CGI), PHP o ASP. Así que para instalar uno de estos scripts lo primero que debemos hacer es verificar si nuestro servidor soporta alguno de estos lenguajes, o sea, que pueda ejecutarlos, en caso negatigo podemos usar servicios gratuitos como el de http://phantomezform.com. En este taller voy a intentar explicar como es que se instala y se configura el FormMail.pl que es uno de los scripts (PERL o CGI) más conocidos y usados, además de ser padre de casi todos los scripts que andan dando vueltas... 1er Paso: Bajar el script. El script lo bajamos gratuitamente de la página oficial, la cual es www.scriptarchive.com Simplemente lo buscan por FormMail y lo bajan en el formato que más deseen (.zip, .rar...) 2do Paso: Configurar el script. Antes que nada tenemos que ver la primera línea del script, dice algo como #!/usr/bin/perl Esa es la dirección del intérprete de perl en el servidor, la gran mayoría de los servidores usan esa dirección, pero talvez el tuyo por alguna razón que nunca vamos a entender lo colocó en otra...Verifica que sea la correcta ! (Pregunta en tu empresa de hosting) Ahora bien, para mandar los mails, este script utiliza un programa de servidor llamado SendMail, que también al igual que el intérprete tiene una ubicación en el servidor, esa ubicación la definimos en la variable $mailprog = '/usr/lib/sendmail -i -t'; Como vemos la variable ya viene configurada, porque en la mayoría de los servidores tiene esa dirección, pero como en el punto anterior: Verifícalo preguntando a tu empresa de hosting. Como segunda variable para configurar nos aparece la famosa @referer, la cual contiene los dominios que tendrán acceso a utilizar este script, si lo dejamos vacío y no colocamos nuestro dominio el script estará libre para que lo use cualquier sitio, y eso no creo que sea lo que desean ! @referers = ('scriptarchive.com','209.196.21.3'); Como ven pueden colocar el dominio, el IP, o ambos. siempre cada dominio/IP entre comillas simples y separadas por una simple coma. Y por último tenemos @recipients, esta al igual que la anterior es una medida de seguridad, que sirve para que el script solamente envíe el E-Mail si y solo si el mail de destino pertenece a alguno de los dominios especificados en @referers. Generalmente esta variable no se toca, para que la verificación sea realizada. Quedando: @recipients = &fill_recipients(@referers); Y LISTO, ya está configurado el script, si bien está la variable @valid_ENV rara vez es modificada, no es muy útil. 3er Paso: Subir el script. Para subir el script necesitamos un FTP que nos permita subir el script en MODO ASKII y que nos permita cambiarle los permisos CHMOD a 755 para que el servidor lo pueda ejecutar y que ningún usuario externo pueda escribirle. Ahora bien, el script debe ser subido solamente a la carpeta que nuestro servidor nos haya brindado para ejecutar scripts de PERL, esta carpeta suele llamarse CGI-BIN o LOCAL-CGI 4to y ultimo paso: Realizar el formulario HTML. Lo primero es configurar nuestra etiqueta FORM, en la cual tenemos que definir: El método: GET o POST en mayúscula !!!, generalmente se utiliza POST por ser más seguro. La acción: En esta se coloca al url del script como ser http:www.misitio.com/cgi-bin/FormMail.pl, cabe destacar que formmail.pl NO es lo mismo que FormMail.pl, minúsculas y mayúsculas se toman como distintas. <form method="POST" action="http://www.misitio.com/cgi-bin/FormMail.pl"> Una vez configurada la etiqueta FORM tenemos que definir el campo oculto recipient que le dice al script cual es la/las direcciones de correo a las cuales debe mandar la información del formulario. <input type=hidden name="recipient" value="mail1@misitio.com,mail2@misitio.com"> NO ES COMPLICADO... NO ? en solo 4 pasos que se pueden llevar a cabo en unos 15 minutos ya tenemos nuestros formularios perfectamente funcionando. Espero que les sirva y les mando un abrazo grande... Saludos
__________________
MonoSwim Antes era fanfarrón y canchero, ahora soy perfecto !!!!!!! Última edición por monoswim; 08-mar-2006 a las 16:40. |
|
|
|
|
|
#3 (permalink) |
|
$moderador{'Esteban'}
![]() ![]() |
Nuevo taller que indica como hacer un tablón de noticias que van subiendo automáticamente mostrando las distintas noticias...asta acá con JS
Con CGI se realizó un script que administra el archivo de las noticias...Con un formulario los usuarios pueden escribir mensajes y estos salen en el tablón de noticias, o sea que cada mensaje se coloca como una nueva noticia y se despliega... Espero que les guste Script scroll Saludos
__________________
MonoSwim Antes era fanfarrón y canchero, ahora soy perfecto !!!!!!! |
|
|
|
|
|
#4 (permalink) |
|
$moderador{'Esteban'}
![]() ![]() |
Instalación del TotMail
Hola, el totmail es un script similar al FormMail pero un poco más fácil de instalar y permite enviar archivos adjuntos en nuestros formularios mediante los conocidos <input type="file">
El script lo descargan desde acá http://villanos.net/herreria/granero/index.html Las instrucciones están en castellano y muy bien redactadas, razón por la cual se las mando así como vienen... Funciones: Envia por correo el contenido de un formulario. Permite formularios de todo tipo (incluso con campos del tipo "file") Copyright: TotMail puede copiarse, modificarse y usarse libremente a condicion de que no se borre ni modifique la cabecera ni este texto, ni ninguna referencia a Web Viva en el codigo del programa Llamada desde el formulario: 1.- Si no hay campos del tipo "file" <form method=POST action="URL de este cgi"> 2.- Si hay campos del tipo "file" <form method=POST enctype="multipart/form-data" action="URL de este cgi"> Como pasar los parametros al CGI. Los parametros como, los campos que son obligatorios, el orden de los campos en el mail, etc se pasan con campos ocultos en el formulario: Mail de destino <input type="hidden" name="Totmaildestino" value="direccion1,direccion2..."> Orden de los campos. Si se impone un orden hay que definir el orden de TODOS los campos (excepto el de los que empiezan por Totmail ya que estos son de uso interno del CGI) <input type="hidden" name="Totmailorden" value="campo1,campo2,campo3...."> Campos obligatorios <input type="hidden" name="Totmailobligatorios" value="campo2,campo5...."> Asunto (subject) con el que se recibira el mail <input type="hidden" name="Totmailasunto" value="Frase"> Si se desea que la persona que rellena el formulario reciba una copia del mail puede incluirse el siguiente campo <input type="hidden" name="Totmailreply" value="Nombre del campo del formulario que contendra el mail del visitante que rellena el formulario"> Acotar el tamaño de cada uno de los ficheros enviados (este ejemplo no permitiria que se enviaran fichero de mas de 50Kb). Si no se desea acotar el tamaño no ponga este campo en el formulario. <input type="hidden" name="Totmailmaxsize" value="50"> URL de la pagina de destino si se tiene exito en el envio <input type="hidden" name="Totmailurlfinal" value="URL de la pagina destino"> URL de la pagina que se muestra si alguno de los campos obligatorios no fue completado <input type="hidden" name="Totmailurlfalta" value="URL de la pagina de advertencia"> URL de la pagina que se muestra si hay algun error durante el envio del mail <input type="hidden" name="Totmailurlerror" value="URL de la pagina de error"> URL de la pagina que se muestra si el mail dado en el campo "Totmailemail" no es sintacticamente correcto (i.e si no es de la forma Y@Z.T) <input type="hidden" name="Totmailurlmailanomalo" value="URL de la pagina a mostrar"> URL de la pagina que se muestra si alguno de los ficheros anexados supera el tamaño preestablecido. Si no puso el campo oculto "Totmailmaxsize", este campo no es necesario <input type="hidden" name="Totmailurlmax" value="URL de la pagina"> URL de la pagina que se muestra si se esta usando el CGI desde un formulario no autorizado <input type="hidden" name="Totmailnopermiso" value="URL de la pagina"> Si uno de los campos corresponde al E-Mail de la persona que rellena el formulario puede hacerse que el mail recibido pueda ser contestado a dicha persona con solo hacer "reply" si se nombra a ese campo como Totmailemail. Es decir el campo podria ser asi Su E-Mail: <input type="text" name="Totmailemail"> Prioridad del mensaje. Puede establecerse como un campo oculto o bien como una lista seleccionable y que sea el usurio que cumplimenta el formulario el que decida la prioridad. Si no se incluye este campo la prioridad es normal. <input type="hidden" name="Totmailprioridad" value="1"> Los posibles valores son 1=Muy alta,2=Alta,3=Normal,4=Baja,5=Muy baja Este campo no es esencial Advertencias: 1.- Estos campos especiales tienen por nombre Totmailxxxx, es decir con la inicial de Totmail en mayusculas y el resto en minusculas 2.- Ningun campo (aparte de los especiales) puede tener un nombre que empiece por Totmail Instalacion: Definir las variables presentes en el CGI ($sistema_web, @autorizadas y $smtp_server o $mailprog). En sistemas NT dar extension pl a este cgi y pasarlo al servidor por FTP en modo ASCII En sistemas UNIX/Linux, dar el path del interprete perl en la linea superior (la que empieza por !) y dar permisos 755 a este script. Si no sabe como dar permisos 755 consulte la seccion "Informacion"->"Ayudas" de http://www.webviva.com/biblioteca Si no sabe cual es el path del interprete perl en su servidor consulte al administrador de su servidor Web Justino Martinez, Junio 2002 Espero que les sirva Saludos
__________________
MonoSwim Antes era fanfarrón y canchero, ahora soy perfecto !!!!!!! |
|
|
|
![]() |
| Herramientas | |
| Desplegado | Califica este Tema |
|
|