Validar Formulario php en la misma pagina
Publicado por Cesar (2 intervenciones) el 18/07/2019 19:50:01
Buenas, necesito ayuda...
Tengo el siguiente codigo, buscando por internet y en algunos tutoriales, logre armar esto. La ide es tener un formulario de contacto que mande un mail y que muestre un mensaje de envio exitoso.
Logre hacerlo (dar el mensaje de exito) pero abriendolo desde una pagina externa.
Al intentar desde el mismo php. me da un error de envio. Warning : mail() [ function.mail ]: SMTP server response: 530 SMTP authentication is required.
No se mucho de php. Quisiera alguna ayuda. Muchas gracias
ESTE ES EL CODIGO:
Tengo el siguiente codigo, buscando por internet y en algunos tutoriales, logre armar esto. La ide es tener un formulario de contacto que mande un mail y que muestre un mensaje de envio exitoso.
Logre hacerlo (dar el mensaje de exito) pero abriendolo desde una pagina externa.
Al intentar desde el mismo php. me da un error de envio. Warning : mail() [ function.mail ]: SMTP server response: 530 SMTP authentication is required.
No se mucho de php. Quisiera alguna ayuda. Muchas gracias
ESTE ES EL CODIGO:
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<section class="section2" style="background-image: url('fondo_form.jpg');">
<h3 class="center-align deep-orange-text text-darken-4">Haga su consulta</h3>
<div class="w3ls-login">
<!-- form starts here -->
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'])?>" method="post">
<div class="agile-field-txt">
<label>
Nombre :</label>
<input type="text" id="names" name="nombre" placeholder="Ingrese su nombre" required>
</div>
<div class="agile-field-txt">
<label>
Email :</label>
<input type="email" name="correo" placeholder="Ingrese su correo" required />
</div>
<div class="agile-field-txt">
<label>
Mensaje :</label>
<textarea name="mensaje" placeholder="Escribe tu consulta" required></textarea>
</div>
<!-- //script for show password -->
<div class="w3ls-login w3l-sub">
<input type="submit" value="ENVIAR" name="submit">
</div>
<?php echo $result; ?>
<?php
if(isset($_POST['submit'])){
if($_POST['nombre'] == ''){
$errors[1] = '<span class="error">Ingrese su nombre</span>';
}else if($_POST['correo'] == '' or !preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/",$_POST['correo'])){
$errors[2] = '<span class="error">Ingrese un correo correcto</span>';
}else if($_POST['mensaje'] == ''){
$errors[4] = '<span class="error">Ingrese un mensaje</span>';
}else{
$dest = "rodriguezcfh@gmail.com"; //Email de destino
$nombre = $_POST['nombre'];
$correo = $_POST['correo'];
$asunto = "Contacto desde nuestra web";
$cuerpo = $_POST['mensaje']; //Cuerpo del mensaje
//Cabeceras del correo
$headers = "From: $nombre <$correo>\r\n"; //Quien envia?
$headers .= "X-Mailer: PHP5\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; //
header("location: index_ski_week_2.php?mailsend");
if(mail($dest,$asunto,$cuerpo,$headers)){
$result = '<div class="result_ok">Email enviado correctamente </div>';
// si el envio fue exitoso reseteamos lo que el usuario escribio:
$_POST['nombre'] = '';
$_POST['correo'] = '';
$_POST['asunto'] = '';
$_POST['mensaje'] = '';
}else{
$result = '<div class="result_fail">Hubo un error al enviar el mensaje </div>';
}
}
}
?>
</form>
Valora esta pregunta


0