CGI - Respuesta de formulario HTML

 
Vista:

Respuesta de formulario HTML

Publicado por Jorge Cilleros (1 intervención) el 21/06/2001 15:13:58
Hola,
mi pregunta es la siguiente: Cuando me devuelve mi formulario los datos desde la pagina web, en mi correo lo recibo como:

Nombre=AAAAAAA
Apellido=BBBBBB
[email protected]

y claro, la parte de [email protected], cuando pincho sobre ella, en el Para del Outlook me pone:

mailto:[email protected]

y me da error.

¿Existe alguna forma de tratar la informacion procedente de mi pagina web?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Tratar datos del formulario para correos electrónicos

Publicado por Alejandro (140 intervenciones) el 22/08/2023 23:30:14
Cuando recibes datos de un formulario en el formato que mencionaste y deseas utilizar la dirección de correo electrónico proporcionada para enviar un correo electrónico, puedes procesar los datos antes de generar el enlace "mailto:" para evitar errores. Aquí hay una forma de hacerlo:

Supongamos que tienes un formulario en tu página web con los siguientes campos:

1
2
3
4
5
6
7
8
9
<form action="procesar.cgi" method="post">
    <label for="nombre">Nombre:</label>
    <input type="text" name="nombre"><br>
    <label for="apellido">Apellido:</label>
    <input type="text" name="apellido"><br>
    <label for="email">Email:</label>
    <input type="text" name="email"><br>
    <input type="submit" value="Enviar">
</form>

Luego, en el script CGI (por ejemplo, "procesar.cgi"), puedes procesar los datos y generar un enlace "mailto:" de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
 
use strict;
use warnings;
use CGI;
 
my $cgi = CGI->new();
 
my $nombre = $cgi->param('nombre');
my $apellido = $cgi->param('apellido');
my $email = $cgi->param('email');
 
print $cgi->header('text/html');
 
# Procesar otros datos o realizar acciones necesarias
 
# Generar enlace "mailto:" con los datos procesados
my $mailto_link = "mailto:$email?subject=Hola%20$nombre%20$apellido";
 
print "Gracias por tu información. Puedes contactarnos haciendo clic ";
print "en <a href=\"$mailto_link\">este enlace</a>.";

En este ejemplo, estamos utilizando la biblioteca CGI de Perl para procesar los datos del formulario. Luego, generamos un enlace "mailto:" con la dirección de correo electrónico proporcionada y un asunto personalizado.

De esta manera, el usuario podrá hacer clic en el enlace generado y se abrirá automáticamente su cliente de correo con la dirección de destino y el asunto prellenados. Esto evita el problema de "mailto:[email protected]" que mencionaste.

Recuerda que esta es solo una forma de manejar los datos del formulario y generar el enlace de correo electrónico. Puedes personalizarlo según tus necesidades y la estructura de tu sitio web.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar