Archivo Contactanos no envia el email

  • Autor Autor hamedm
  • Fecha de inicio Fecha de inicio
H

hamedm

Gamma
Programador
No recomendado
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenas Noches Forobetanos

He estado trabajando en mi pagina web, y pues este es mi codigo de contactenos, al poner en enviar no me manda el email al correo que nesecito no se porque

PHP:
<?php
include('config.php'); 
if(!isset($_SESSION[usuario]) ) 
{ 
?>
<!doctype>
<html>
<head>
<link rel="stylesheet" href="CSS/index.css;?>" type="text/css">
</head>
<body>
<section class="cuadro">
<?php
if (!$HTTP_POST_VARS){ 
?> 
<form action="" method="post" id="formcontacto"> 
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" /> 
<br/> 
Email: <br/><input type=text name="email" size="16" requerid="requerid" /> 
<br/> 
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea> 
<br/> 
<input type="submit" value="Enviar"/> 
</form> 
<?php
}else{
$correo = "sabzgoltab@yahoo.com";
$cuerpo = "Formulario enviado\n"; 
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n"; 
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n"; 
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n"; 
mail($correo,"Formulario recibido",$cuerpo); 
echo "Gracias por rellenar el formulario. Se ha enviado correctamente."; 
} 
?> 
</section>
<?php
include('js.php');
?>
</body>
</html>
<?php } else { ?> 
<!doctype>
<html>
<head>
<link rel="stylesheet" href="CSS/index.css;?>" type="text/css">
</head>
<body>

<section class="cuadro">
<?php
if (!$HTTP_POST_VARS){ 
?> 
<form action="" method="post" id="formcontacto"> 
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" /> 
<br/> 
Email: <br/><input type=text name="email" size="16" requerid="requerid" /> 
<br/> 
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea> 
<br/> 
<input type="submit" value="Enviar"/> 
</form> 
<?php
}else{
$correo = "sabzgoltab@yahoo.com";
$cuerpo = "Formulario enviado\n"; 
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n"; 
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n"; 
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n"; 
mail($correo,"Formulario recibido",$cuerpo); 
echo "Gracias por rellenar el formulario. Se ha enviado correctamente."; 
} 
?> 
</section>
<?php
include('js.php');
?>
</body>
</html>
<? } ?>

La pagina donde puedenver el archivo es http://www.sabzgoltab.com/contacto.php

Muchas Gracias si me ayuden a resolver cual es mi error
 
Yo no soy un programador en "PHP" pero te puedo aportar mis puntos de vista que acabe de determinar de tu formulario.

1. Los actions no tienen lugar donde ir, posiblemente funcione a través de un sub archivo php o desde el .js que tiene abajo tras un include.

2. El proveedor que estas usando no permite el envió de mensajes a través del puerto default 25 y/o denega los mensajes nobody como lo puede provocar tu formulario.

3. Posiblemente no se ha determinado el sendmail correctamente en el js de tu código y/o en el código del formulario de contacto.

Salud2s.
 
Hola, pues no creo que el action nesecite ir a otro archivo ya que el php ya esta en la misma pagina.
Y pues mi proveedor de hosting me da la funcion mail.
 
Hola,
He corregido algunas cosas y espero que te funcione pero para ser honesto veo muy descompuesto ese formulario, es decir, no le veo mucho orden.

Saludos

PHP:
<?php 
include('config.php');  
if(!isset($_SESSION['usuario']) )  
{  
?> 
<!doctype> 
<html> 
<head> 
<link rel="stylesheet" href="CSS/index.css;?>" type="text/css"> 
</head> 
<body> 
<section class="cuadro"> 
<?php 
if (!isset($_POST['sumit'])){  
?>  
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" id="formcontacto">  
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" />  
<br/>  
Email: <br/><input type=text name="email" size="16" requerid="requerid" />  
<br/>  
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea>  
<br/>  
<input type="submit" name="submit" value="Enviar"/>  
</form>  
<?php 
}else{ 
$correo = "sabzgoltab@yahoo.com"; 
$cuerpo = "Formulario enviado\n";  
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n";  
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n";  
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n";
$asunto = "Formulario recibido";
$cabeceras = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();  
mail($correo,$asunto,$cuerpo,$cabeceras);  
echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";  
}  
?>  
</section> 
<?php 
include('js.php'); 
?> 
</body> 
</html> 
<?php } else { ?>  
<!doctype> 
<html> 
<head> 
<link rel="stylesheet" href="CSS/index.css;?>" type="text/css"> 
</head> 
<body> 

<section class="cuadro"> 
<?php 
if (!isset($_POST['sumit'])){  
?>  
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" id="formcontacto">  
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" />  
<br/>  
Email: <br/><input type=text name="email" size="16" requerid="requerid" />  
<br/>  
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea>  
<br/>  
<input type="submit" name="submit" value="Enviar"/>  
</form>  
<?php 
}else{ 
$correo = "sabzgoltab@yahoo.com"; 
$cuerpo = "Formulario enviado\n";  
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n";  
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n";  
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n";
$asunto = "Formulario recibido";
$cabeceras = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();  
mail($correo,$asunto,$cuerpo,$cabeceras);  
echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";  
}  
?>  
</section> 
<?php 
include('js.php'); 
?> 
</body> 
</html> 
<? } ?>
 
Hola,
He corregido algunas cosas y espero que te funcione pero para ser honesto veo muy descompuesto ese formulario, es decir, no le veo mucho orden.

Saludos

PHP:
<?php 
include('config.php');  
if(!isset($_SESSION['usuario']) )  
{  
?> 
<!doctype> 
<html> 
<head> 
<link rel="stylesheet" href="http://forobeta.com/CSS/index.css;>" type="text/css"> 
</head> 
<body> 
<section class="cuadro"> 
<?php 
if (!isset($_POST['sumit'])){  
?>  
<form action="http://forobeta.com/<?php echo $_SERVER['PHP_SELF']; ?>" method="post" id="formcontacto">  
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" />  
<br/>  
Email: <br/><input type=text name="email" size="16" requerid="requerid" />  
<br/>  
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea>  
<br/>  
<input type="submit" name="submit" value="Enviar"/>  
</form>  
<?php 
}else{ 
$correo = "sabzgoltab@yahoo.com"; 
$cuerpo = "Formulario enviado\n";  
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n";  
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n";  
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n";
$asunto = "Formulario recibido";
$cabeceras = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();  
mail($correo,$asunto,$cuerpo,$cabeceras);  
echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";  
}  
?>  
</section> 
<?php 
include('js.php'); 
?> 
</body> 
</html> 
<?php } else { ?>  
<!doctype> 
<html> 
<head> 
<link rel="stylesheet" href="http://forobeta.com/CSS/index.css;>" type="text/css"> 
</head> 
<body> 

<section class="cuadro"> 
<?php 
if (!isset($_POST['sumit'])){  
?>  
<form action="http://forobeta.com/<?php echo $_SERVER['PHP_SELF']; ?>" method="post" id="formcontacto">  
Nombre: <br/><input type=text name="nombre" size="16" requerid="requerid" />  
<br/>  
Email: <br/><input type=text name="email" size="16" requerid="requerid" />  
<br/>  
Mensaje: <br/><textarea name="coment" cols="32" rows="6" requerid="requerid"></textarea>  
<br/>  
<input type="submit" name="submit" value="Enviar"/>  
</form>  
<?php 
}else{ 
$correo = "sabzgoltab@yahoo.com"; 
$cuerpo = "Formulario enviado\n";  
$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n";  
$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n";  
$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "\n";
$asunto = "Formulario recibido";
$cabeceras = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();  
mail($correo,$asunto,$cuerpo,$cabeceras);  
echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";  
}  
?>  
</section> 
<?php 
include('js.php'); 
?> 
</body> 
</html> 
<? } ?>

Hola, muchas gracias me sirvio pero, al momento de enviar el mensaje, cuando me llega al correo no llega la informacion.

El correo solo llega asi
Formulario enviado
Nombre:
Email:
Mensaje:

Espero que me Ayudes Gracias
 
porque usas $HTTP_POST_VARS en lugar de $_POST. Que versión de PHP tenes?
 
En la linea 14 está sumit cuando tendría que ser submit. (!isset($_POST['sumit'])), (!isset($_POST['submit']))

- - - Actualizado - - -

y cambia esto $HTTP_POST_VARS["nombre"], por esto $_POST["nombre"].
También te conviene ponerle algunos filtros, yo lo tengo así trim(htmlentities($_POST["nombre"]))
 
Listo Muchas Gracias ese era el error. Gracias a Todos
 
Atrás
Arriba