Foros del Web » Programación para mayores de 30 ;) » Programación General »

Problemas con un formulario

Estas en el tema de Problemas con un formulario en el foro de Programación General en Foros del Web. Buenas, no se si he puesto el tema en le sitio correcto. El caso es que estoy realizando una web que en una parte lleva ...
  #1 (permalink)  
Antiguo 12/06/2008, 05:17
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Busqueda Problemas con un formulario

Buenas, no se si he puesto el tema en le sitio correcto. El caso es que estoy realizando una web que en una parte lleva un formulario. Varios de los campos son tipo "file". He leido en varios sitios que para que funcione se necesita tener el script Totmail. Pero la cuestion es que no me funciona bien. Creo que el formulario esta bien hecho pero no se si el "pach interprete perl" esta bien. La página la tengo alojada en Hostalia.

Aqui os dejo el código a ver si me podéis ayudar:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
</head>


<script src="http://www.jotform.com/js/form.js?v2.0.644" type="text/javascript"></script>
<style type="text/css">
html,body{height:100%; margin:0;}
.tbmain{
/* Changes on the form */
background: url(http://www.jotform.com/images/styles/style1_bg.gif) #ffffff top repeat-x !important;
}
.left{
/* Changes on the form */
color: #ff5200 !important;
font-family: Verdana !important;
font-size: 11px !important;
}
td.left {
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:bold;
color:#ff5200;
vertical-align: top;
text-align: left;
}
.pagebreak{
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:bold;
color:black;
}
td.right {
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:normal;
color:#333333;
vertical-align: top;
text-align: left;
}
.tbmain{
height:100%;
color:#333333;
background:url(http://www.jotform.com/images/styles/style1_bg.gif) #ffffff top repeat-x;
}
.head{
font-family: "Trebuchet MS";
font-size: large;
font-weight: bold;
color:#ff5200;
vertical-align: top;
text-align: left;
}
.notvalid{
border:2px red solid;
font-family:"Trebuchet MS";
}
.text{
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:normal;
color:#333333;
border:1px #cccccc solid;
background:url(http://www.jotform.com/images/styles/style1_txt_bg.gif) #f6f6f6 top repeat-x;
}
select.other{
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:normal;
color:#333333;
border:1px #cccccc solid;
background:url(http://www.jotform.com/images/styles/style1_txt_bg.gif) #f6f6f6 top repeat-x;
}
.btn{
font-family: "Trebuchet MS";
font-size: 11px;
font-weight:normal;
color:#333333;
border:1px #c6c7ca solid;
background: url(http://www.jotform.com/images/styles/style1_btn_bg.gif) #e4e4e4 top repeat-x;
}
span.required{
font-size: 13px !important;
color: red !important;
}

</style>
<body>
<table width="100%" cellpadding="2" cellspacing="0" class="tbmain">
<tr><td class="topleft" width="10" height="10">&nbsp;</td>
<td class="topmid">&nbsp;</td>
<td class="topright" width="10" height="10">&nbsp;</td>
</tr>
<tr>
<td class="midleft" width="10">&nbsp;&nbsp;&nbsp;</td>
<td class="midmid" valign="top">

<form enctype="multipart/form-data" method="post" action="http://xxxx.com/cgi-bin/totmail/totmail32.cgi">
<input type="hidden" name="Totmaildestino" value="[email protected]">
<input type="hidden" name="Totmailasunto" value="Formulario de venta desde la web">
<div id="main">
<table width="520" cellpadding="5" cellspacing="0">
<tr >
<td colspan="2" class="left" >&nbsp;</td>
</tr>
<tr >
<td width="150" class="left" >
<label >nombre</label>
</td>
<td class="right" >
<input type="text" size="20" name="nombre" class="text" value="" id="q8" maxlength="100" maxsize="100">
</td>
</tr>
<tr >
<td width="150" class="left" >
<label>subir1</label>
</td>
<td class="right">
<input type="file" class="text" size="20" name="subir1" id="q9">
</td>
</tr>
<tr >
<td width="150" class="left" >
<label>subir2</label>
</td>
<td class="right">
<input type="file" class="text" size="20" name="subir2" id="q10">

</td>
</tr>
<tr >
<td width="150" class="left" >&nbsp;

</td>
<td class="right">
<input type="submit" class="btn" value="Submit">
</td>
</tr>
</table>
</div>
</form>
</td>
<td class="midright" width="10">&nbsp;&nbsp;&nbsp;</td>
</tr>
<tr>
<td class="bottomleft" width="10" height="10">&nbsp;</td>
<td class="bottommid">&nbsp;</td>
<td class="bottomright" width="10" height="10">&nbsp;</td>
</tr>
</table>
<script type="text/javascript">
validate("q_form_81620030535");
</script>
</body>
</html>


Esto es el formulario. Y el interprete perl que tengo puesto en el script es "#!/usr/bin/perl -w".


Gracias. Un Saludo
  #2 (permalink)  
Antiguo 12/06/2008, 06:12
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: Problemas con un formulario

Que error te tira ? hostalia permite la ejecución de scripts perl ?

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 12/06/2008, 09:05
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

Este es el error que me da:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.


Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.


No se si hostalia lo soporta, porque he llamado pero pasan de mi.
  #4 (permalink)  
Antiguo 12/06/2008, 09:23
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: Problemas con un formulario

Cita:
No se si hostalia lo soporta, porque he llamado pero pasan de mi
Heee ? como que pasan de vos ? eso es un giro idiomático ?

Ese error puede ser porque no le diste permisos CHMOD 755 al script o que tienes un error de sintaxis en el mismo...

Así que seguramente tengas soporte perl...

Saludos
__________________
Esteban Quintana
  #5 (permalink)  
Antiguo 12/06/2008, 09:27
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

Si sulen hacerlo mucho.. pero bueno.

Efectivamente no le habia dado los permisos pero ahora me sale este error:

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...">



Y como pueden comprobar arriba esta puesto esa linea de código.

Última edición por medi_nita; 13/06/2008 a las 02:13
  #6 (permalink)  
Antiguo 13/06/2008, 06:54
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: Problemas con un formulario

<input type="hidden" name="Totmaildestino" value="direccion1,direccion2...">
<input type="hidden" name="Totmaildestino" value="[email protected]">

Joder, si tienes ese campo...fijate bien en el código fuente (que sea el que nos muestras) que esté ese campo oculto dentro de las etiquetas <form> y </form>

Saludos
__________________
Esteban Quintana
  #7 (permalink)  
Antiguo 16/06/2008, 04:10
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

El código lo tengo tal y como está ahí, no se q estará fallando...
  #8 (permalink)  
Antiguo 17/06/2008, 04:33
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

Os dejo aqui tambien el totmail:


#!/usr/bin/perl -v

##########################
# Definimos las variables

# ¿Que sistema usa su servidor Web?
# [0=NT,1=UNIX/Linux]

$sistema_web=1;

# Si desea impedir que formularios no autorizados usen este
# cgi, añada la/s url/s que pueden usar este CGI.
# Por ejemplo @autorizadas=("www.miweb.com","www.lademisamigos.c om/pepe");
# permite que cualquier formulario situado en esos servidores usen este CGI
# Si no desea impedir el uso a nadie entonces ponga
# @autorizadas=("");

@autorizadas=("");

#######################
# Si su sistema es NT
#######################

# Debe dar el nombre de un servidor SMTP valido
# (pregunte al administrador de su espacio Web
# que servidor SMTP puede usar)

$SMTP_server="mail.icaroidc.com";

##############################
# Si su sistema es UNIX/Linux
##############################

# Donde esta el sendmail?
# Si no sabe el path de sendmail en su sistema, pregunte
# al administrador de su espacio Web.
# En el caso de UNIX o Linux tiene libertad para usar
# sendmail o bien para usar un servidor de SMTP. Si
# desea usar un servidor de SMTP, defina la variable
# $SMTP_server de mas arriba y deje la variable
# $mailprog vacia (es decir como $mailprog='';)
#
# Añadir la opcion -t al final del path!

$mailprog = '';



Estos son los únicos campos que hay que configurar, me podriais ayudar ??
  #9 (permalink)  
Antiguo 17/06/2008, 08:15
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: Problemas con un formulario

haa, está mal, estás usando el SMTP, eso es para sistemas windows, en linux debes usar el sendmail que generalmente está en

/usr/sbin/sendmail

Colocá eso en $mailprog y colocá un # al principio de $SMTP_server

Saludos
__________________
Esteban Quintana
  #10 (permalink)  
Antiguo 18/06/2008, 05:08
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

En $mailprog que tengo que poner exactamente, es que nunca he realizado cosas con script ni los he modificado ni nada, por lo que estoy bastante perdida.

Muchas gracias por la ayuda.
  #11 (permalink)  
Antiguo 18/06/2008, 06:47
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: Problemas con un formulario

En mail prog tienes que colocar la ubicación de tu sendmail, que es un programa que viene en los linux...

generalmente está en la ubicación que te mostré...si no está ahí preguntales a los de tu empresa de hosting...si es que no tienes acceso root al server....

Saludos
__________________
Esteban Quintana
  #12 (permalink)  
Antiguo 18/06/2008, 08:58
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
Respuesta: Problemas con un formulario

Código:
$mailprog = '/usr/sbin/sendmail -t';
  #13 (permalink)  
Antiguo 18/06/2008, 09:32
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

Lo siento por ser tan pesada pero ya no se que más hacer para que me funcione, seguro que es super facil de hacer pero a mi parece que no se me da bien. Os dejo el código del formulario, el del totmail y el error que me da. Haber si alguien me puede dar solución...

FORMULARIO:

<form enctype="multipart/form-data" method="post" action="http://icaroidc.com/cgi-bin/totmail38.cgi">
<input type="hidden" name="Totmaildestino" value="1">
<input type="hidden" name="Totmailasunto" value="q_form_81620030535">
<div id="main">
<table width="520" cellpadding="5" cellspacing="0">
<tr >
<td colspan="2" class="left" >&nbsp;</td>
</tr>
<tr >
<td width="150" class="left" >
<label >nombre</label>
</td>
<td class="right" >
<input type="text" size="20" name="nombre" class="text" value="" id="q8" maxlength="100" maxsize="100">
</td>
</tr>
<tr >
<td width="150" class="left" >
<label>subir1</label>
</td>
<td class="right">
<input type="file" class="text" size="20" name="subir1" id="q9">
</td>
</tr>
<tr >
<td width="150" class="left" >
<label>subir2</label>
</td>
<td class="right">
<input type="file" class="text" size="20" name="subir2" id="q10">

</td>
</tr>
<tr >
<td width="150" class="left" >&nbsp;

</td>
<td class="right">
<input type="submit" class="btn" value="Submit">
</td>
</tr>
</table>
</div>
</form>
</td>
<td class="midright" width="10">&nbsp;&nbsp;&nbsp;</td>
</tr>
<tr>
<td class="bottomleft" width="10" height="10">&nbsp;</td>
<td class="bottommid">&nbsp;</td>
<td class="bottomright" width="10" height="10">&nbsp;</td>
</tr>
</table>
<script type="text/javascript">
validate("q_form_81620030535");
</script>


TOTMAIL:

#!/usr/bin/perl -w
##########################
# Definimos las variables

# ¿Que sistema usa su servidor Web?
# [0=NT,1=UNIX/Linux]

$sistema_web=1;

# ¿El formulario es Flash?
# [0=No,1=Si]
# En caso de ser un formulario Flash ver el formulario flash de ejemplo

$formulario_flash=0;

# Si desea impedir que formularios no autorizados usen este
# cgi, añada la/s url/s que pueden usar este CGI.
# Por ejemplo @autorizadas=("www.miweb.com","www.lademisamigos.c om/pepe");
# permite que cualquier formulario situado en esos servidores usen este CGI

@autorizadas=("www.icaroidc.com");

# Para evitar el SPAM es mejor ocultar la direccion de correo del destinatario y
# restringir las direcciones que recieben los correos
# Asi que ponemos aqui la lista de direcciones que pueden usar este cgi (escribirlas entre
# comillas simples y no dobles)

@destinatarios_auth=('[email protected]');

######## VARIABLES CAPTCHA
# Para evitar que los formularios sean rellenados automaticamente por otros
# programas podemos activar el filtro Captcha [0=no, 1=si]

$filtro_captcha=0;

# Directorio en el que captcha.cgi almacena los datos a teclear
# Poner la barra final

$directorio_captcha="datos/";

# Tiempo que se da para autentificarse en segundos

$tiempo_captcha=120;

#######################
# Si su sistema es NT
#######################

# Debe dar el nombre de un servidor SMTP valido
# (pregunte al administrador de su espacio Web
# que servidor SMTP puede usar)

#$SMTP_server="mail.icaroidc.tld';

##############################
# Si su sistema es UNIX/Linux
##############################

# Donde esta el sendmail?
# Si no sabe el path de sendmail en su sistema, pregunte
# al administrador de su espacio Web.
# En el caso de UNIX o Linux tiene libertad para usar
# sendmail o bien para usar un servidor de SMTP. Si
# desea usar un servidor de SMTP, defina la variable
# $SMTP_server de mas arriba y deje la variable
# $mailprog vacia (es decir como $mailprog='';)
#
# Añadir la opcion -t al final del path!

############ IMPORTANTE ##############################################
# Es muy conveniente para detectar posibles vulnerabilidades usar la
# forma '/usr/sbin/sendmail -t -f [email protected]'
# donde [email protected] recibira los mails que no puedan entregarse.
# De este modo se pueden detectar posibles usos fraudulentos por parte
# de hackers si alguna de las direcciones a las que se envia el correo
# no existe, tiene el buzon lleno, etc

$mailprog = '/usr/sbin/sendmail -t';


P.D. Lo que falta es el código que no se toca. Y tiene los permisos. 755.

ERROR:

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...">




Muchas gracias y lo siento por ser tan pesada pero no se ya que hacer....

Última edición por medi_nita; 18/06/2008 a las 10:02
  #14 (permalink)  
Antiguo 18/06/2008, 10:41
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
Respuesta: Problemas con un formulario

El error es claro: no has puesto ningún campo oculto en el formulario del tipo "hidden" y nombre "Totmaildestino".
  #15 (permalink)  
Antiguo 18/06/2008, 10:44
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

Si que lo he puesto..


<input type="hidden" name="Totmaildestino" value="1">
  #16 (permalink)  
Antiguo 18/06/2008, 11:15
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
Respuesta: Problemas con un formulario

Que no... que no...

En 'value' has de poner las direcciones de correo que recibirán el resultado del formulario.

Código:
<input type="hidden" name="Totmaildestino" value="[email protected]">
  #17 (permalink)  
Antiguo 18/06/2008, 11:17
 
Fecha de Ingreso: junio-2006
Mensajes: 22
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Problemas con un formulario

aaa.. ok, pero aunque le ponga la direccion del destinatario, me sigue diciendo lo mismo....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:39.