PHP - ayuda con formulario para que lo envie al correo

 
Vista:

ayuda con formulario para que lo envie al correo

Publicado por Jose (2 intervenciones) el 28/01/2013 11:21:35
Hola he usado una plantilla html y php y no consigo que el formulario me envíe lo que se escribe en el a mi correo. Lei en un tutorial que tenia que añadir un archivo php y llamarlo desde mi formulario
¿Que tengo que cambiar para que me funcione?
Gracias de antemano

HTML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<form id="ContactForm" action="js/Contactform.php" enctype="TEX/PLAIN" method="post" name="información">
    <div>
        <div  class="wrapper">
            <span>Nombre:</span>
            <input type="text" class="input" >
        </div>
        <div  class="wrapper">
            <span>E-mail:</span>
            <input type="text" class="input" >
        </div>
        <div  class="textarea_box">
            <span>Texto:</span>
            <textarea name="textarea" cols="1" rows="1"></textarea>
        </div>
        <div class="wrapper">
            <span>&nbsp;</span>
            <a href="#" class="button1" onClick="document.getElementById('ContactForm').reset()"><span></span><strong>Borrar</strong></a>
            <a href="#" class="button1" onClick="document.getElementById('ContactForm').submit()"><strong>Enviar</strong></a>
        </div>
    </div>
</form>


Y EL ARCHIVO PHP llamado Contactform.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$nombre = $_POST['Nombre'];
$mail = $_POST['Mail'];
 
$header = 'From: ' . $Mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
 
$mensaje = "Este mensaje fue enviado por " . $Nombre . "\r\n";
$mensaje .= "mail: " . $Mail . " \r\n";
$mensaje .= "Texto: " . $_POST['Texto'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());
 
$para = 'info@mi mail.es';
$asunto = 'Asunto del mail recibido';
 
mail($para, $asunto, utf8_decode($mensaje), $header);
 
echo 'Mensaje enviado correctamente';
?>


Y la hoja de stylos del formulario

1
2
3
4
5
6
7
8
/* ============================= forms ============================= */
#ContactForm {margin-top:-2px}
#ContactForm .wrapper {overflow:inherit;min-height:30px}
#ContactForm span {float:left;width:75px;color:#fff;padding-top:2px}
#ContactForm a {margin-right:10px;float:left;margin-top:23px;width:112px;text-align:center}
#ContactForm a span {width:100%}
#ContactForm .input {float:left;margin:0;width:525px;height:16px;background:#fff;padding:4px 10px;color:#808080;font:14px "Trebuchet MS", Arial, Helvetica, sans-serif}
#ContactForm textarea {overflow:auto;margin:0;float:left;width:525px;height:289px;background:#fff;padding:4px 10px;color:#808080;font:14px "Trebuchet MS", Arial, Helvetica, sans-serif}


Ayuda por favor
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

ayuda con formulario para que lo envie al correo

Publicado por xve (6935 intervenciones) el 28/01/2013 12:51:19
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

ayuda con formulario para que lo envie al correo

Publicado por xve (2 intervenciones) el 28/01/2013 13:02:21
Gracias por responderme

Lo del SMTP no dudo que sea bueno pero no se mucho de programacion web y es totalmente distinto a lo que viene en mi plantilla. Necesito saber que tengo que cambiar en mi web para que funcione el formulario no poner otro formulario

Muchas gracias de todas formas
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

ayuda con formulario para que lo envie al correo

Publicado por Miguel (1 intervención) el 24/02/2013 07:54:31
Hola José,

Yo estoy experimentando el mismo problema con el formulario de correo-e de
la página Web que obtuve gratuitamente de Template Monster. Las plantillas
la regalan pero las entregan incompletas y sin soporte; gran favor que nos
hacen. Mi formulario de correo-e es exactamente igual a l tuyo. Aunque tengo
que admitir y darte las gracias porque en tú post de arriba encontré pedazos
que me ayudaron avanzar en el funcionamiento del mío.

Veo que has adaptado mucho el script PHP original al español. En el proceso
creo que has cometido errores. Te sugiero me envíes el original para yo jugar
con el, hacerle los cambios / adecuaciones y cuando me funcione te envío los
detalles. ¿ Bueno ?

Según veo, el archivo php ya lo tienes, es el que indicas arriba llamado Con-
tactform.php. También, lo estás llamado desde el formulario HTML pues lo
tienes en <form id="ContactForm" action="js/Contactform.php”. Dos cositas
sobre este archivo, la ruta que especificas en "...action="js/Contactform.php"
requiere que crees una carpeta llamada "js" en tu servidor y coloques el archivo
Contactform.php dentro de ella para que la ruta sea válida. Igual lo puedes
colocar en el root - a la par con tu index.html - y quitarle el "js" antes del
nombre del archivo Contactform.php. El otro punto es que este Contactform.php
tiene unos errorcitos que hay que arreglarle, por ejemplo ponerle los punticos
antes de "=" a "$header = 'From: ' . $Mail . " \r\n"; y $mensaje = "Este mensaje
fue enviado por " . $Nombre . "\r\n", fíjate que el resto de las instrucciones los
tienen;

Mi mensaje es enviado y confirmado por una segunda página HTML. PERO llega
vacío y dicha segunda página HTML no se devuelve – se congela. Seguiré corri-
giendo el script porque igual que tú necesito hacerlo funcionar. Chao y suerte.

Miguel
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

ayuda con formulario para que lo envie al correo

Publicado por jose (35 intervenciones) el 24/02/2013 14:16:39
Mira a mi me funciona bien te pongo mi codigo:
este seria el formulario:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<form action="process.php" method="post" name="form1" id="form1">
        <table width="517" align="center">
          <tr valign="baseline">
            <td nowrap="nowrap" align="right">Nombre:</td>
            <td><input type="text" name="nombre" value="" size="32" /></td>
          </tr>
          <tr valign="baseline">
            <td nowrap="nowrap" align="right">Email:</td>
            <td><input type="text" name="email" value="" size="32" /></td>
          </tr>
          <tr valign="baseline">
            <td nowrap="nowrap" align="right">Direccion:</td>
            <td><input name="direccion" type="text" id="direccion" value="" size="32" /></td>
          </tr>
          <tr valign="baseline">
            <td nowrap="nowrap" align="right">Localidad:</td>
            <td><input type="text" name="localidad" value="" size="32" /></td>
          </tr>
          <tr valign="baseline">
            <td align="right" valign="top" nowrap="nowrap">Comentario:</td>
            <td><textarea name="comentario" cols="50" rows="6"></textarea></td>
          </tr>
          <tr valign="baseline">
            <td nowrap="nowrap" align="right">&nbsp;</td>
            <td><input name="submit" type="submit" id="submit" value="Enviar formulario" />
            <input name="reset" type="reset" value='Borrar todo' /></td>
          </tr>
        </table>
        <input type="hidden" name="MM_insert" value="form1" />
      </form>


este el PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
if (isset($_POST['submit'])) {
  $recipiente = "X@hotmail.com";
  $asunto = "Comentario del Sitio";
  $error = 0;
  $nombre = $_POST['nombre'];
  $email = $_POST['email'];
  $direccion = $_POST['direccion'];
  $localidad = $_POST['localidad'];
  $comentario = $_POST['comentario'];
 
  if($nombre=="" || $email=="" || $comentario=="") $error=1;
  elseif(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" ."@"."([a-z0-9]+([\.-][a-z0-9]+)*)+"."\\.[a-z]{2,}"."$",$email))$error=2;
 
  if($error==1){
    echo "<b><h3>¡El siguiente error ha ocurrido!</h3></b>
    <br />No ha rellenado todos los campos obligatorios.<BR> Por favor vuelva <A HREF=\"javascript:history.back()\">atras</A>.<BR>";
  }
  elseif($error==2){
    echo "<b><h3>¡El siguiente error ha ocurrido!</h3></b>
    <br />El correo electronico es invalido!<BR> Por favor vuelva <A HREF=\"javascript:history.back()\">atras</A>.<BR>";
  }
  
  if (!$error){
    $message ="nombre: ".$nombre."<br>";
    $message .="email: ".$email."<br>";
    $message .="direccion: ".$direccion."<br>";
    $message .="localidad: ".$localidad."<br>";
    $message .="comentario: ".$comentario."<br>";
    $message = stripslashes($message);
    $headers = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type:text/html; charset=iso-8859-1\r\n";
    $headers .= "From: $email\r\n";
    $headers .= "Repaly-to: $email\r\n";
    $headers .= "Cc: $email\r\n";
    mail($recipiente,$asunto,$message,$headers);
    echo "<b><h3>¡El mensaje ha sido enviado correctamente!</h3></b>
    <br />Gracias por tus comentarios.<BR>Le mandaremos una respuesta lo mas antes posible.
    <br /><br /><b>http://www.tu direcion web</b>
    <br /><br /><A HREF='../mensajes.php'><U>Regresar</U></A>.";
  }
}
?>
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

ayuda con formulario para que lo envie al correo

Publicado por Fernando (1 intervención) el 09/11/2013 13:54:56
Hola tengo un formulario flash template. Como hago o donde tengo que poner mi correo por favor?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
$destination = "you@domain.com";
$subject = $_POST['subject1'];
$from = 'From: Web Form <you@domain.com>';
 
$name = $_POST['name1'];
$phone = $_POST['number1'];
$email = $_POST['email1'];
$mes = $_POST['message1'];
 
$message = "Name: $name".PHP_EOL.
"Phone: $phone".PHP_EOL.
"E-mail: $email".PHP_EOL.
"Message: $mes".PHP_EOL;
 
mail($destination, $subject, $message, $from);
 
/**
 * end of file
 */
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

ayuda con formulario para que lo envie al correo

Publicado por mrchuitus (1 intervención) el 28/04/2014 04:06:38
tu php esta malo hermano. visita esta web y alli veras tu error hermano. Dios te bendiga . http://www.tuwebdeinformatica.com/Crearwebs/elementos/formulario_envio_php.html
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