Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Ayuda con FormMail.pl

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> CGI
Mensaje Mar Abr 17, 2007 11:20 pm
cisnerosinc
Perlero Nuevo
Perlero Nuevo
Registrado: 17 Abr 2007
Mensajes: 1
Ayuda con FormMail.pl Responder citando

Hola, me he montado una página, tengo un formulario para envío de mensajes y que estos me lleguen a mi correo electrónico.

Encontré que necesito un CGI Perl que se llama FormMail.pl.
He colocado mis datos según el manual; tenía errores y al parecer todo está bien. El problema es que no recibo ningún mensaje a mi correo como si no funcionara el CGI... Alguien me puede ayudar.

Este es mi archivo .pl

Perl:
Define Variables                                                           #
#      Detailed Information Found In README File.                            #

# $mailprog defines the location of your sendmail program on your unix       #
# system. The flags -i and -t should be passed to sendmail in order to       #
# have it ignore single dots on a line and to read message for recipients    #

$mailprog = '/usr/lib/sendmail -i -t';

# @referers allows forms to be located only on servers which are defined     #
# in this field.  This security fix from the last version which allowed      #
# anyone on any server to use your FormMail script on their web site.        #

@referers = ('dominio.com.mx','201.000.00.00');

# @recipients defines the e-mail addresses or domain names that e-mail can   #
# be sent to.  This must be filled in correctly to prevent SPAM and allow    #
# valid addresses to receive e-mail.  Read the documentation to find out how #
# this variable works!!!  It is EXTREMELY IMPORTANT.                         #

@recipients = ('dominio.com.mx','cisneros@dominio.com.mx');

# ACCESS CONTROL FIX: Peter D. Thompson Yezek                                #
# @valid_ENV allows the sysadmin to define what environment variables can    #
# be reported via the env_report directive.  This was implemented to fix     #
# the problem reported at http://www.securityfocus.com/bid/1187              #

@valid_ENV = ('REMOTE_HOST','REMOTE_ADDR','REMOTE_USER','HTTP_USER_AGENT');

# Done


Espero que esto les sirva para que me puedan ayudar...
Mensaje Mie Abr 18, 2007 6:44 am
monoswim
Vive para Perl en Español
Vive para Perl en Español
Registrado: 18 Nov 2003
Mensajes: 695
Ubicación: Buenos Aires
Responder citando

Perl:
@recipients = ('dominio.com.mx','cisneros@dominio.com.mx')


Esta línea la cambiaste y no debías cambiarla, debe llamar a la función original del formmail, creo que se llamaba fill_recipients() o algo así...

Saludos
Mensaje Mie Abr 18, 2007 5:36 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

Debes actualizar varios campos de la cabecera de formmail. Tanto @recipientes como @referers deben contener los dominios y las direcciones de los buzones permitidos para enviar/recibir correos desde el cgi.
Mensaje Jue Abr 19, 2007 9:46 am
monoswim
Vive para Perl en Español
Vive para Perl en Español
Registrado: 18 Nov 2003
Mensajes: 695
Ubicación: Buenos Aires
Responder citando

Los recipients los debes mandar por parámetro desde el formulario HTML...O almenos en las versiones que yo usaba era así...

Chekcea en en un taller del foro de perl de www.forosdelweb.com hice un taller sobre como configurar el FormMail...

Saludos
Mensaje Jue Jun 07, 2007 2:11 pm
zozo666
Perlero Frecuente
Perlero Frecuente
Registrado: 26 May 2007
Mensajes: 137
Responder citando

Yo tengo un problema también con este bendito Formail. En todos lados dicen que debe haber un campo <input type=hidden name="recipient" value="yo@dominio.com"> y en ningún lado me dice si tengo que tener algún <input type="submit" value="enviar"> que es lo más seguro que tenga que ir. Ahora, cuando le doy enviar me salta el siguiente error:

There was no recipient or an invalid recipient specified in the data sent to FormMail. Please make sure you have filled in the recipient form field with an e-mail address that has been configured in @recipients. More information on filling in recipient form fields and variables can be found in the README file.

Ya no sé qué hacer con eso porque modifiqué varias cosas pero no obtuve respuestas. Cuento que el formail.pl lo tengo instalado en el servidor mio IIS, osea que el action del form está con la dirección de mi localhost. Gracias
Mensaje Jue Jun 07, 2007 3:29 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

Pero, ¿has hecho lo que dice el mensaje de error, lo de editar la variable @recipients dentro del Formmail?
Mensaje Vie Jun 08, 2007 10:15 am
zozo666
Perlero Frecuente
Perlero Frecuente
Registrado: 26 May 2007
Mensajes: 137
Responder citando

En todos lados dice que lo deje asi, igual yo probe editandolo pero nada.

@referers = ('localhost','miIP');
@recipients = &fill_recipients(@referers);

Como es que tengo que hacer con esto?? como los edito??

Yo tengo el servidor montado en mi maquina con IIS y es osea es localhost. Entocnes donde dice localhost que pongo? 'http://localhost/' o 'localhost' o que??

Donde dice 'miIP' que pongo? mi IP?? cualquier otra IP??

Como es que se configura esto por q trate de varias formas pero nada. Gracias
Mensaje Vie Jun 08, 2007 6:39 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

@recipients debe guardar un listado de las direcciones de correo electrónicas que pueden recibir correo desde Formmail.

Al principio del programa, debe haber una línea (la primera que aparezca) de la forma

@recipients = (...);

Dentro de los paréntesis es donde debes colocar las direcciones de correo. Por ejemplo:

@recipients = ('yo@dominio.com');
Mensaje Dom Jun 10, 2007 2:20 pm
zozo666
Perlero Frecuente
Perlero Frecuente
Registrado: 26 May 2007
Mensajes: 137
Responder citando

Tengo otra pregunta. Ya cambié unas cosas y anduvo, ¿pero? me tira la ventana como que lo envío pero no recibo el mensaje. Tengan en cuenta que yo tengo en mi computadora el servidor y que todavía estoy en duda si la versión de FormMail.pl que esta en www.scriptarchive.com es la que funciona en Windows o en Linux. Si tienen la de Windows y cómo configurarla les agradezco que la compartan. Muchas gracias.
Mensaje Dom Jun 10, 2007 4:13 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

Yo te recomiendo que uses la versión 'segura' del FormMail, que está en http://nms-cgi.sourceforge.net/scripts.shtml . Bájate la que se llama compat.

En el fichero README vienen descritas todas las opciones.

El problema de este programa como del original es que por defecto dependen de un programa que debes tener instalado en tu ordenador, llamado sendmail. Como no es muy normal (nada normal) que ese programa esté instalado en Windows (jajaja), la opción que puedes usar es la que te ofrece el nms: en la variable $mailprog, en lugar del sendmail se puede poner el nombre o IP del servidor de correo que te permita enviar esos correos. Deberás colocar allí tu propio servidor. Naturalmente, ese servidor deberá permitirte hacer eso (relay abierto a ordenadores conocidos). El ejemplo está en el README.

Otra opción es conseguir en gestor de correo, como el sendmail, pero para Windows. Entrando en Google y buscando por las palabras 'sendmail' y 'windows' salen unos cuantos programas. Lo que ya no puedo es aconsejarte alguno porque obviamente no los he probado (ni pienso hacerlo).
Mensaje Lun Jun 11, 2007 8:18 am
zozo666
Perlero Frecuente
Perlero Frecuente
Registrado: 26 May 2007
Mensajes: 137
Responder citando

En cuanto tenga un rato de tiempo me pongo a probarlo. Ojalá funcione, muchas gracias. ¿Saben algún hosting gratis bueno, con CGI? Gracias
Publicar nuevo tema   Responder al tema    Foros de discusión -> CGI Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group