No recibir ningún correo electrónico
Frecuentes
Visto 88 veces
0
Hola, vi un tutorial de php en línea y no pude recibir ningún correo electrónico de este formulario de contacto y no pude entender dónde me equivoqué
<html>
<head></head>
<body>
<?php
if(isset($_POST["submit"])){
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
mail("abcsojf@gmail.com",$subject, $message, "From:" . $email);
}
?>
<h1>Contact Us</h1>
<form method="post" action="abc.html">
<table align="center" style="color:#fff;">
<tr><td style="color:black">Email:<input type="text" name="email" /></td></tr>
<tr><td style="color:black">subject:<input type="text" name="subject" /></td></tr>
<tr><td style="color:black">Message:<br>
<textarea name="message" cols="40" rows="15">Type your message here</textarea>
<input type="submit" name="submit" value="send" /></td></tr>
</table>
</form>
</body>
</html>
4 Respuestas
1
Sin embargo, debes cargar la página:
- Un servidor web (Así que no
file:///
URI) - con PHP instalado
- con PHP configurado para procesar el archivo (servidores que procesan archivos con
.html
las extensiones con PHP son muy raras).
respondido 29 nov., 13:11
Y si está en Windows con una configuración de servidor SMTP válida en su PHP.ini - Abeja Oscura
0
Hay tres formas posibles de hacerlo funcionar. en el que tienes que seguir primero uno obligatorio.
1) Cambie el nombre de su archivo de abc.html -> abc.php y también verifique si PHP está disponible y funcionando en su host local/servidor alojado.
2) Cambie la etiqueta de su formulario a
<form name="mailform" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> OR
<form name="mailform" method="post" action="">
para que sus datos publicados estén disponibles en la misma página.
3) En lugar de
if(isset($_POST["submit"])){
condición tratar de usar
if(isset($_POST["submit"]) && isset($_POST["email"]) && isset($_POST["subject"])){
con verificación de valor nulo. Esto garantizará la disponibilidad de datos en la función de correo. También intente extender la función de correo con los encabezados a continuación.
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers = 'From: '.$email . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail("abcsojf@gmail.com",$subject, $message, $headers);
Siguiendo estos tres pasos, con suerte obtendrá el correo deseado.
respondido 29 nov., 13:12
0
Su código funcionará si hace las dos cosas siguientes:
Dado que está enviando a la misma página, puede eliminar la parte de acción.
<form method="post" action="">
Guarde su página actual como un archivo .php.
tu página será abc.php
Ahora ejecute su página en el navegador y envíe el formulario.
pd: necesitaría tener apache ejecutándose con php instalado.
Puede verificar esto creando una nueva página con los siguientes contenidos:
<?php phpinfo();?>
Espero que esto tiene sentido.
respondido 29 nov., 13:11
Cambié como usted dijo y lo agregué a mi sitio web jhcsnagpur.com 1) haga clic en visionarios 2) haga clic en visionarios nuevamente - sainath
0
En primer lugar, el envío de correo a través de PHP con la configuración predeterminada requiere el servicio Sendmail instalado y configurado en el servidor. En servidores unix puedes comprobar /usr/spool/mail/username
archivo, o /var/log/maillog
para el registro de mail() "uso".
respondido 29 nov., 13:11
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas php html contact-form or haz tu propia pregunta.
¿Tu formulario se está publicando en un archivo HTML? - J2D8T
¿Comprobó el valor de retorno de la
mail
¿llamar? ¿Has mirado en la carpeta de spam? ¿Miró el registro de correo del host de envío? - OswaldPor favor, aprende a amar las etiquetas - Quentin
Por favor, deja de abusar de las tablas para el diseño - Quentin
donde estas probando?? localhost o cualquier servidor alojado?? - Soumik Sur