Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Programación General (http://www.forosdelweb.com/f14/)
-   -   Error en FormMail!!Ayuda! (http://www.forosdelweb.com/f14/error-formmail-ayuda-575232/)

NaRanJiTo78 12/04/2008 04:09

Error en FormMail!!Ayuda!
 
Hola!

Tengo un formulario en dreamweaver y he descargado formMail.pl, en el que he editado la línea donde hay que poner la IP:

@referers = ('scriptarchive.com','numero.de.mi.ip')

así como la linea donde hay que poner el domino:

@recipients = &fill_recipients([email protected])

Con ello he guardado el archivo y lo he puesto en mi carpeta del servidor cgi-bin.

Posteriormente he modificado el código del formulario en dreamweaver poniendo:

<form action='http://www.midominio.com/cgi-bin/formmail.pl' method='post'>

El caso esque creo que he seguido todas las instrucciones para poder usar correctamente FormMail, pero cuando lo pruebo y le doy al botón Enviar, me sale la siguiente frase:

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.

Que es lo que he hecho mal?Alguien me puede ayudar?

Muchas gracias.

NaRanJiTo78 12/04/2008 15:09

Re: Error en FormMail!!Ayuda!
 
Bien,haciendo algunos cambios en FormMail.pl , como:

@referers = ('midominio.com','numero.de.mi.ip') y

@recipients = &fill_recipients('midominio.com','[email protected] om')

he conseguido que me funcione, redireccionando a una página de agradecimiento ya creada por mi, sin darme errores.

EL CASO ESQUE NO ME LLEGA EL CORREO...que puede estar pasando?

(En el código de Dreamweaver tengo:
<form id="Formulario" name="Formulario" method="post" action="http://www.midominio.com/cgi-bin/formmail.pl">
y
<input type=hidden name="recipient" value="[email protected]" />

Donde tengo el error para que no me genere un correo y me lo envíe??

Muchas gracias,un saludo

jferrero 12/04/2008 15:34

Re: Error en FormMail!!Ayuda!
 
Si no sale el correo es que quizás el sistema donde se está ejecutando el FormMail no tiene puesto el sendmail.

Te recomiendo que uses el NMS FormMail, que, con la ayuda de Net::SMTP se puede conectar directamente al servidor de correo destino.

NaRanJiTo78 12/04/2008 15:46

Re: Error en FormMail!!Ayuda!
 
Cita:

Iniciado por jferrero (Mensaje 2361323)
Si no sale el correo es que quizás el sistema donde se está ejecutando el FormMail no tiene puesto el sendmail.

Y como se pone eso??

Gracias

P.D. El NMS FormMail no lo puedo poner, ya que uno de sus requerimientos es :"A web host with a Unix or Unix-type server" y el servidor donde tengo aloada la página es Windows...

NaRanJiTo78 13/04/2008 05:44

Re: Error en FormMail!!Ayuda!
 
Una cosa, el hosting web que tengo para esa web es bajo windows, puede ser por eso que no funcione???

jferrero 13/04/2008 11:24

Re: Error en FormMail!!Ayuda!
 
Sí, es posible. No es normal que en los servidores Windows tengan instalado el sendmail... :-)

Mira el código de FormMail para verificar que se necesita sendmail (busca por esa palabra).

El NMS FormMail te permitirá enviar el correo, a cambio de tener el módulo Net::SMTP instalado, que lo normal es que sí esté.

NaRanJiTo78 22/04/2008 12:41

Re: Error en FormMail!!Ayuda!
 
Hola!

Tengo instalado NMS FormMail.pl en la carpeta cgi-bin(de servidor WINDOWS!) lo siguiente:

#!/usr/bin/perl -wT
#
# NMS FormMail Version 3.14c1
#

use strict;
use vars qw(
$DEBUGGING $emulate_matts_code $secure %more_config
$allow_empty_ref $max_recipients $mailprog @referers
@allow_mail_to @recipients %recipient_alias
@valid_ENV $date_fmt $style $send_confirmation_mail
$confirmation_text $locale $charset $no_content
$double_spacing $wrap_text $wrap_style $postmaster
$address_style
);

# PROGRAM INFORMATION
# -------------------
# FormMail.pl Version 3.14c1
#
# This program is licensed in the same way as Perl
# itself. You are free to choose between the GNU Public
# License <http://www.gnu.org/licenses/gpl.html> or
# the Artistic License
# <http://www.perl.com/pub/a/language/misc/Artistic.html>
#
# For help on configuration or installation see the
# README file or the POD documentation at the end of
# this file.

# USER CONFIGURATION SECTION
# --------------------------
# Modify these to your own settings. You might have to
# contact your system administrator if you do not run
# your own web server. If the purpose of these
# parameters seems unclear, please see the README file.
#
BEGIN
{
$DEBUGGING = 1;
$emulate_matts_code= 0;
$secure = 1;
$allow_empty_ref = 1;
$max_recipients = 1;
$mailprog = 'SMTP:midominio.com';
$postmaster = '[email protected]';
@referers = qw(midominio.com localhost);
@allow_mail_to = qw([email protected]);
@recipients = ('midominio.com','[email protected]');
%recipient_alias = ('[email protected]');
@valid_ENV = qw(REMOTE_HOST REMOTE_ADDR REMOTE_USER HTTP_USER_AGENT);
$locale = 'ES';
$charset = 'iso-8859-1';
$date_fmt = '%A, %B %d, %Y at %H:%M:%S';
$style = '/css/nms.css';
$no_content = 0;
$double_spacing = 1;
$wrap_text = 0;
$wrap_style = 1;
$address_style = 0;
$send_confirmation_mail = 0;
$confirmation_text = <<'END_OF_CONFIRMATION';
From: [email protected]
Subject: Formulario

Thank you for your form submission.

END_OF_CONFIRMATION

pero me sale otra vez el error:

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers...
que es lo que tengo mal configurado??

jferrero 23/04/2008 05:53

Re: Error en FormMail!!Ayuda!
 
Yo juraría que el NMS FormMail es mucho más largo.

Por favor, comprueba que lo tienes completo: http://nms-cgi.sourceforge.net/formm...pat-3.14c1.zip

NO LO PUBLIQUES AQUÍ, porque no es necesario.

NaRanJiTo78 23/04/2008 08:30

Re: Error en FormMail!!Ayuda!
 
Cita:

Iniciado por jferrero (Mensaje 2375616)
Yo juraría que el NMS FormMail es mucho más largo.

Por favor, comprueba que lo tienes completo: http://nms-cgi.sourceforge.net/formm...pat-3.14c1.zip

NO LO PUBLIQUES AQUÍ, porque no es necesario.

Claro que es mucho más largo...:-)

Lo que he publicado es por si alguien me puede decir si he puesto algo mal, una coma o algo así...(en cuanto a mi host o correo, que lo tengo expresado como @midominio.com dentro de la config principal, que es esa noP?)

Muchas gracias

jferrero 23/04/2008 09:49

Re: Error en FormMail!!Ayuda!
 
Para comprobar si el código está bien, ejecuta

perl -c programa.pl

Si no sale nada, es que no hay errores, al menos, sintácticos.

NaRanJiTo78 23/04/2008 10:05

Re: Error en FormMail!!Ayuda!
 
Donde lo ejecuto?

jferrero 23/04/2008 10:37

Re: Error en FormMail!!Ayuda!
 
Vas a la carpeta cgi-bin, donde está el FormMail.pl, con una ventana de línea de comandos, y ejecutas: perl -c FormMail.pl (o como realmente se llame).

NaRanJiTo78 23/04/2008 11:12

Re: Error en FormMail!!Ayuda!
 
jferrero, podrias ser más concreto, por favor?

Es decir, abro la carpeta cgi-bin del servidor, pero...de donde saco la linea de comandos?

Muchas gracias

NaRanJiTo78 24/04/2008 01:31

Re: Error en FormMail!!Ayuda!
 
Quizá la linea de comandos de ms-dos?Pero cual sería la ruta del server?

monoswim 24/04/2008 06:38

Re: Error en FormMail!!Ayuda!
 
estás en un hosting ? no creo que tengas acceso a la línea de comandos...si tienes instalado perl en tu PC (www.activeperl.com) copiá el formmail.pl a digamos c:\FormMail.pl y hacé lo que te dice jferrero

perl -c FormMail.pl (estando en c: lógicamente...)

Saludos

NaRanJiTo78 24/04/2008 08:44

Re: Error en FormMail!!Ayuda!
 
Ok, ya he instalado Perl.

Tras ejecutar "C:>perl -c FormMail.pl" me pone:

"-T" is on the #!, it must also be used on the command line at FormMail.p line 1

Que significa??

NaRanJiTo78 24/04/2008 08:47

Re: Error en FormMail!!Ayuda!
 
Será porque la primera línea de todas del archivo FormMail.pl es:

#!/usr/bin/perl -wT ?

En tal caso que hay que hacer?

Muchas gracias

jferrero 25/04/2008 01:07

Re: Error en FormMail!!Ayuda!
 
Te dice que lo ejecutes en la línea de comandos de la misma manera que en la primera línea del fichero, por lo que tendrá que ser: perl -cT FormMail.pl

NaRanJiTo78 25/04/2008 21:31

Re: Error en FormMail!!Ayuda!
 
Tras ejecutar me pone:

"Odd number of elements in hash assignment at FormMail.pl line 50.
Use of uninitialiZed value in join or string at (eval5) line 344.
FormMail.pl syntax OK"

Que significa?que debo hacer ahora?

NaRanJiTo78 25/04/2008 21:59

Re: Error en FormMail!!Ayuda!
 
P.D: hay algun comando para abrir el archivo FormMail.pl y que te lo abra diciendote cada número de línea?

jferrero 26/04/2008 05:45

Re: Error en FormMail!!Ayuda!
 
El mensaje de error dice que la definición de un hash tiene un número impar de elementos.

Revisando el código que has publicado, la línea con ese defecto es esta:

%recipient_alias = ('[email protected]');

Claramente, falta un elemento. O sobra el que has puesto. Yo lo quitaría, si no vas a usar alias de esa dirección.

Para editar, en Windows tienes el Notepad++, o mucho mejor, el UltraEdit. Tienes más aquí:
http://www.perlmonks.org/index.pl?node_id=531175

y en el perlfaq3, en la pregunta "Is there an IDE or Windows Perl Editor?"

NaRanJiTo78 26/04/2008 06:24

Re: Error en FormMail!!Ayuda!
 
Bien, lo he dejado ahora así:
%recipient_alias = ();

y ejecutando otra vez "perl -cT FormMail.pl" me pone: "FormMail.pl syntax OK

Pero al introducir el formulario y darle a enviar me sale de nuevo:

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.

Si en teoria el archivo .pl está bien, porque me dice eso el servidor?Donde puede estar el error??

Muchas Gracias

jferrero 26/04/2008 06:53

Re: Error en FormMail!!Ayuda!
 
Abre el fichero FormMail.pl, busca la línea
use CGI;

y añádale después esta otra:
use CGI::Carp qw/ fatalsToBrowser /;

Si ocurre un error, lo verás en el navegador. Aún así, localiza la posición de los ficheros de log del servidor web y mira la última actividad, porque seguramente en el error.log habrá quedado grabado el error.

NaRanJiTo78 27/04/2008 06:50

Re: Error en FormMail!!Ayuda!
 
jferrero, hay muchas líneas "use CGI", en cual la pongo?

use CGI;
use CGI::NMS::Charset;
use CGI::NMS::Script;
use CGI::NMS::Validator;
use CGI::NMS::Mailer::ByScheme;
use CGI::NMS::Script::FormMail;

lo he puesto en el primero para probar,pero me sigue dando el mismo error...

NaRanJiTo78 27/04/2008 07:32

Re: Error en FormMail!!Ayuda!
 
lo he añadido y ha quedado así esa parte:

use CGI;
use CGI::Carp qw/ fatalsToBrowser /;
use POSIX qw(locale_h strftime);
use CGI::NMS::Charset;

era así?el caso esque sigue dando el mismo error...será que es un problema del servidor?

jferrero 27/04/2008 09:54

Re: Error en FormMail!!Ayuda!
 
¿Y qué es lo que dicen los log de actividad del servidor web?

NaRanJiTo78 27/04/2008 13:30

Re: Error en FormMail!!Ayuda!
 
Cita:

Iniciado por jferrero (Mensaje 2381178)
¿Y qué es lo que dicen los log de actividad del servidor web?

he revisado el sitio, pero no hay ningun archivo que contenga esa informacion...como lo puedo mirar?

jferrero 27/04/2008 16:28

Re: Error en FormMail!!Ayuda!
 
¿En qué sistema operativo está el servidor? En Google comentan algo de que es un error típico del IIS.

NaRanJiTo78 27/04/2008 16:46

Re: Error en FormMail!!Ayuda!
 
Según he visto en las características del servidor (aruba) es Plataforma Windows 2003

Entonces que puedo hacer?no puesdo instalar un formMail?

NaRanJiTo78 28/04/2008 11:11

Re: Error en FormMail!!Ayuda!
 
Por cierto, se puede hacer un formmail que tenga también la opción de que se puedan subir archivos y que te lleguen al correo adjunto?

Puedo poner el formmail en otro servidor que no sea el de la página para poder solucionar el problema?

Gracias

monoswim 28/04/2008 12:31

Re: Error en FormMail!!Ayuda!
 
si estás en windows te recomiendo usar el totmail, es nativo de windows y puede enviar archivos adjuntos...

En el taller o el FAQ de este foro tienes información al respecto...

Saludos

NaRanJiTo78 03/05/2008 17:29

Re: Error en FormMail!!Ayuda!
 
Buenas de nuevo!!

Tras instalar Totmail, me da el siguiente error:
Código HTML:

Formulario mal construido

Falta el/los destinatario/s del E-Mail

Recuerde que debe incluir un campo oculto como este
<input type="hidden" name="Totmaildestino" value="direccion1,direccion2...">

Pero el caso esque en el código de la página tengo puesto perfectamente:

Código HTML:

<input type="hidden" name="Totmaildestino" value="[email protected]">
Porque me ocurre ésto,? Que es lo que tengo mal puesto?

Aparte, me puso que había otro error del filtro captcha que hay que poner obligatoriamente:

Código HTML:

<input type="text" name="Totmailcaptcha" value="">
Pero al ser <input type="text" se me cuela un campo extra no deseado en el formulario...es necesario poner este campo???

Vaya lío con FormMail y Totmail...no hay algo más sencillo para poder usar un formulario de lado del servidor con plataforma NT???

Gracias


La zona horaria es GMT -6. Ahora son las 08:01.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.