Foros del Web » Programación web » PHP »

[SOLUCIONADO] Error con mail()

Estas en el tema de Error con mail() en el foro de PHP en Foros del Web. Estoy buscando cómo hacer funcionar mi formulario y no encuentro la forma de que funcione. He usado el código que viene en un aporte de ...

  #1 (permalink)  
Antiguo 25/03/2013, 13:14
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Error con mail()

Estoy buscando cómo hacer funcionar mi formulario y no encuentro la forma de que funcione. He usado el código que viene en un aporte de un tema antiguo y ya ni siquiera me aparece el formulario, ahora me da directamente un error (Fatal error: Function name must be a string in /home/a6953165/public_html/contacto.php on line 52)
La línea 52 se corresponde a la función mail. Dejo aquí el código por si alguien me puede echar una mano.
Código PHP:
 <?php
$Nombre 
$_POST['nombre'];
$Email $_POST['email'];
$Asunto $_POST['asunto'];
$Mensaje $_POST['mensaje'];
$header 'De: ' $Email " \r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text-plain";
$mensaje "Nombre: " $Nombre " \r\n";
$mensaje "Email: " $Email " \r\n";
$mensaje "Asunto: " $Asunto " \r\n";
$mensaje "Mensaje: " $Mensaje " \r\n";
$mensaje "Enviado el " date("d/m/y \a \l\a\s H:i:s ");
$para '[email protected]';
mail($para$utf8_decode($mensaje), $header);
echo 
"Su mensaje se ha enviado correctamente";
?>
Gracias

PD: Siento haber resucitado el tema anterior
__________________
Memoria, Compromiso, Fe
  #2 (permalink)  
Antiguo 25/03/2013, 13:18
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

Ahi te respondieron, pero ya no sigas ese hilo por favor...

http://www.forosdelweb.com/f18/aport...4/#post4397224
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #3 (permalink)  
Antiguo 25/03/2013, 13:29
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

loncho_rojas ya no vuelvo a hablar más por ahí.
Bueno, ya he probado la solución del otro post y ya el problema del error fatal está solucionado. Ahora el problema es el mismo que he tenido en todos los intentos de poder enviar el formulario por mail, y es que no recibo nunca nada a mi correo, ni en la bandeja de entrada ni en la de spam. Ya no se donde puede estar el problema porque el servidor donde he subido la página (000webhost) supuestamente admite el webmail y no se por qué no me deja enviar mi correo. ¿Alguien puede iluminarme el camino?
__________________
Memoria, Compromiso, Fe
  #4 (permalink)  
Antiguo 25/03/2013, 13:32
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Mira que admita webmail no significa que acepte el metodo que estas usando ya que posiblemente si ocupes otro metodo como phpmailer si puedas enviar correos, porque los códigos a los que te han heche referencia son válidos y funcionales siempre y cuando tengas habilitada la funcion mail.

Como te dije prueba con phpmailer y has envíos de correo autenticados posiblemente el hosting nada mas permita envios de este tipo..
  #5 (permalink)  
Antiguo 25/03/2013, 13:36
 
Fecha de Ingreso: abril-2012
Ubicación: El Ejido - Almería
Mensajes: 5
Antigüedad: 2 años
Puntos: 1
Respuesta: Error con mail()

Prueba a añadir el asunto a la funcion mail():

mail($para, $Asunto, $utf8_decode($mensaje), $header);
  #6 (permalink)  
Antiguo 25/03/2013, 13:36
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Gracias alex1084, ¿puedes explicarme más o menos cómo va eso del phpmailer? Es que estoy intentando rizar mucho el rizo cuando no tengo ni idea de PHP.
__________________
Memoria, Compromiso, Fe
  #7 (permalink)  
Antiguo 25/03/2013, 13:43
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Mira en internet hay muchos ejemplos del usu de phpmailer y en este foro tambien nada mas es cuestion de googlear un poco te dejo unos link para que te hagas una idea pero con eso que dices que no tenes idea de php entonces has empezado mal, primero aprende y lee un poco de php para luego ver como envias correos, porque no querras correr si aun no puedes caminar...

http://phpmailer.worxware.com/index.php?pg=examples

http://sourceforge.net/projects/phpm...r%20php4/0.90/

http://www.programacion.com/articulo..._phpmailer_213

http://guiabreve.com/enviar-correos-con-phpmailer.html

http://blog.unijimpe.net/enviar-html-con-phpmailer/
  #8 (permalink)  
Antiguo 25/03/2013, 13:46
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Gracias, me pondré las pilas e intentaré aprender PHP para poder tener mi web perfecta.
__________________
Memoria, Compromiso, Fe
  #9 (permalink)  
Antiguo 25/03/2013, 13:51
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Leyendo un poco el uso de phpmailer he visto que usa un servidor de SMTP. El hosting donde tengo alojada la página no admite el SMTP para cuentas gratuitas. ¿Esa puede ser la causa de que no me funcione el envio del formulario?¿Funcionaría el phpmailer en este hosting?
__________________
Memoria, Compromiso, Fe
  #10 (permalink)  
Antiguo 25/03/2013, 13:57
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

sube a tu hosting un archivo llamado

info.php y dentro ponle este code

Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. ?>

y pasanos el LINK te diremos si tienes habilitadas las funciones y demas... no te preocupes, no es información demasiado sensible... =D

Luego podrás eliminar el archivo...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #11 (permalink)  
Antiguo 25/03/2013, 14:09
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Aquí dejo el link:
http://server27.000webhost.com/phpinfo.php
__________________
Memoria, Compromiso, Fe
  #12 (permalink)  
Antiguo 25/03/2013, 14:13
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

Veo que no hay nada irregular en él... te propongo otra cosa para saber si soporta o no...

podrías colocar error_reporting(E_ALL); al comienzo de tu código (tiene que estar dentro de la etiqueta php), intenta enviar un correo sencillo... copia y pega el error que te genera...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #13 (permalink)  
Antiguo 25/03/2013, 14:26
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Nada más cargar la página me da los siguientes fallos:
-Notice: Undefined index: nombre in /home/a6953165/public_html/contacto.php on line 40
-Notice: Undefined index: email in /home/a6953165/public_html/contacto.php on line 41
-Notice: Undefined index: asunto in /home/a6953165/public_html/contacto.php on line 42
-Notice: Undefined index: mensaje in /home/a6953165/public_html/contacto.php on line 43

Al intentar mandar un correo me aparece el siguiente fallo:
-Notice: Undefined index: mensaje in /home/a6953165/public_html/contacto.php on line 43
__________________
Memoria, Compromiso, Fe
  #14 (permalink)  
Antiguo 25/03/2013, 14:31
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

Bueno, para eso debes tener un formulario primeramente, que envia los datos tipo POST y luego lo recibes...

Pasa que al iniciar tu página, el script busca los POST y esos no existen, si no hasta el momento de enviarlos.. por lo que te sería de bien poner algo como

Código PHP:

 <?php 
if(isset($_POST['nombre'])){

$Nombre $_POST['nombre']; 
$Email $_POST['email']; 
$Asunto $_POST['asunto']; 
$Mensaje $_POST['mensaje']; 
$header 'De: ' $Email " \r\n"
$header .= "X-Mailer: PHP/" phpversion() . " \r\n"
$header .= "Mime-Version: 1.0 \r\n"
$header .= "Content-Type: text-plain"
$mensaje "Nombre: " $Nombre " \r\n"
$mensaje .= "Email: " $Email " \r\n"
$mensaje .= "Asunto: " $Asunto " \r\n"
$mensaje .= "Mensaje: " $Mensaje " \r\n"
$mensaje .= "Enviado el " date("d/m/y \a \l\a\s H:i:s "); 
$para '[email protected]'
mail($para$utf8_decode($mensaje), $header); 
echo 
"Su mensaje se ha enviado correctamente"

}

?>
en cuanto al segundo error, te dice que no existe la variable $Mensaje = $_POST['mensaje'];

EDITO TODO.. pero no estas cocatentando tus variables.... en $MENSAJE si vas a incluir mas datos en la variable necesitas usar .=

$mensaje = "Hola";
$mensaje .="Que tal";

y obtendras el "Hola Que tal
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...

Última edición por loncho_rojas; 25/03/2013 a las 14:38
  #15 (permalink)  
Antiguo 26/03/2013, 04:48
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Ya he modificado el código y ahora me aparecen sólo los dos siguientes errores.
-Notice: Undefined index: mensaje in /home/a6953165/public_html/contacto.php on line 45

-Notice: Undefined variable: mensaje in /home/a6953165/public_html/contacto.php on line 56

La línea 45 es la siguiente
Código PHP:
$Mensaje $_POST['mensaje']; 
La línea 56 es
Código PHP:
mail($parautf8_decode($mensaje), $header); 
He probado poniendo en la línea 45
Código PHP:
$Mensaje .= $_POST['mensaje'
pero sigue dandome el mismo error. ¿Puede que se deba a que el nombre de la variable es igual al de su contenido (Mensaje, mensaje)?
__________________
Memoria, Compromiso, Fe
  #16 (permalink)  
Antiguo 26/03/2013, 06:39
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

Es sintaxis amigo... no es lo mismo $mensaje que $Mensaje..


Código PHP:

 <?php 
if(isset($_POST['nombre'])){

$Nombre $_POST['nombre']; 
$Email $_POST['email']; 
$Asunto $_POST['asunto']; 
$msj $_POST['mensaje']; 
$header 'De: ' $Email " \r\n"
$header .= "X-Mailer: PHP/" phpversion() . " \r\n"
$header .= "Mime-Version: 1.0 \r\n"
$header .= "Content-Type: text-plain"
$mensaje .= "Nombre: " $Nombre " \r\n"
$mensaje .= "Email: " $Email " \r\n"
$mensaje .= "Asunto: " $Asunto " \r\n"
$mensaje .= "Mensaje: " $msj " \r\n"
$mensaje .= "Enviado el " date("d/m/y \a \l\a\s H:i:s "); 
$para '[email protected]'
mail($para$utf8_decode($mensaje), $header); 
echo 
"Su mensaje se ha enviado correctamente"

}

?>
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...

Última edición por loncho_rojas; 26/03/2013 a las 09:57
  #17 (permalink)  
Antiguo 26/03/2013, 09:50
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Sigue saliendo error en la línea
Código PHP:
$mensaje $_POST['mensaje']; 
y en
Código PHP:
$mensaje .= "Mensaje: " $Mensaje " \r\n"
__________________
Memoria, Compromiso, Fe
  #18 (permalink)  
Antiguo 26/03/2013, 09:56
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

Pon tu código entero...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #19 (permalink)  
Antiguo 26/03/2013, 09:59
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Ahí va el código entero de la web.
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<title>Contacto - Representaciones Jes&uacute;s Suviri</title>
	<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
	<meta name="author" content="Abel Suviri">
	<meta name="keywords" content="baño, ducha, grifo, mampara, representaciones, suviri">
	<link rel="stylesheet" type="text/css" href="style.css">
	<script type="text/javascript">
		function validacion(){
			var nombre = document.getElementById("nombre").value;
			var email = document.getElementById("email").value;
			var asunto = document.getElementById("asunto").value;
			var mensaje = document.getElementById("mensaje").value;
			var formato = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
			if(nombre == ""){
				alert('Introduzca un nombre')
				return false; 
			}
			var v_email = formato.test(email);
			if((v_email != true)||(email == "")){ 
				alert('Introduzca un email v\u00e1lido');
				return false;
			}
			if(asunto == ""){
				alert('Introduzca un asunto')
				return false;
			}
			if(mensaje == ""){
				alert('Introduzca un mensaje')
				return false;
			}
			return true;
			alert('El mensaje se ha enviado correctamente');
		}
	</script>
</head>
<body>
<?php
$Nombre = $_POST['nombre'];
$Email = $_POST['email'];
$Asunto = $_POST['asunto'];
$Mensaje = $_POST['mensaje'];
$header = 'De: ' . $Email . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text-plain";
$mensaje = "Nombre: " . $Nombre . " \r\n";
$mensaje = "Email: " . $Email . " \r\n";
$mensaje = "Asunto: " . $Asunto . " \r\n";
$mensaje = "Mensaje: " . $Mensaje . " \r\n";
$mensaje = "Enviado el " . date("d/m/y \a \l\a\s H:i:s ");
$para = '[email protected]';
mail($para, utf8_decode($mensaje), $header);
echo "Su mensaje se ha enviado correctamente";
?> 	
	<div id="banner">
		<img src="images/banner.gif"></img>
	</div>
	<div id="menu">
		<ul>
			<li><a href="index.html">inicio</a>
			<li><a href="firmas.html">firmas</a>
			<li><a href="productos.html">productos</a>
			<li><a href="descargas.html">descargas</a>
			<li><a href="contacto.php">contacto</a>
		</ul>
	</div>	
	<div id="contacto">
		<h1>Jes&uacute;s Suviri</h1>
		Telf. 610 725 255<br>
		Fax. 952 411 242<br>
		Mail: [email protected]<br>
		M&Aacute;LAGA
	</div>	
	<hr>
	<div id="formulario">
		<p>Puede contactar tambi&eacute;n rellenando el siguiente formulario con los datos solicitados.</p>
		<form name="formulario" action="contacto.php" method="post" onsubmit="return validacion()">
			<label for="nombre">Nombre: </label><input type="text" size="50" value="" id="nombre" name="nombre" /><br />
			<label for="email">Email: </label><input type="text" size="50" value="" id="email" name="email" /><br />
			<label for="asunto">Asunto: </label><input type="text" size="50" id="asunto" name="asunto" /><br />
			<label for="mensaje">Mensaje:</label><textarea cols="37" rows="10" id="mensaje" name="asunto"></textarea><br />
			<input type="submit" value="Enviar" class="boton" />
			<input type="reset" value="Limpiar" class="boton" />
		</form>
	</div>	
	<div id="copyright">
	Dise&ntilde;ado por Abel Suviri ([email protected]) 
	</div>
</body>
</html>
__________________
Memoria, Compromiso, Fe
  #20 (permalink)  
Antiguo 26/03/2013, 10:04
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Mira prueba con este..

Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5.     <title>Contacto - Representaciones Jes&uacute;s Suviri</title>
  6.     <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  7.     <meta name="author" content="Abel Suviri">
  8.     <meta name="keywords" content="baño, ducha, grifo, mampara, representaciones, suviri">
  9.     <link rel="stylesheet" type="text/css" href="style.css">
  10.     <script type="text/javascript">
  11.         function validacion(){
  12.             var nombre = document.getElementById("nombre").value;
  13.             var email = document.getElementById("email").value;
  14.             var asunto = document.getElementById("asunto").value;
  15.             var mensaje = document.getElementById("mensaje").value;
  16.             var formato = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
  17.             if(nombre == ""){
  18.                 alert('Introduzca un nombre')
  19.                 return false;
  20.             }
  21.             var v_email = formato.test(email);
  22.             if((v_email != true)||(email == "")){
  23.                 alert('Introduzca un email v\u00e1lido');
  24.                 return false;
  25.             }
  26.             if(asunto == ""){
  27.                 alert('Introduzca un asunto')
  28.                 return false;
  29.             }
  30.             if(mensaje == ""){
  31.                 alert('Introduzca un mensaje')
  32.                 return false;
  33.             }
  34.             return true;
  35.             alert('El mensaje se ha enviado correctamente');
  36.         }
  37.     </script>
  38. </head>
  39. <body>
  40. <?php
  41. if(isset($_POST["enviar"])){
  42.     $Nombre = $_POST['nombre'];
  43.     $Email = $_POST['email'];
  44.     $Asunto = $_POST['asunto'];
  45.     $Mensaje = $_POST['mensaje'];
  46.     $header = 'De: ' . $Email . " \r\n";
  47.     $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  48.     $header .= "Mime-Version: 1.0 \r\n";
  49.     $header .= "Content-Type: text-plain";
  50.     $mensaje = "Nombre: " . $Nombre . " \r\n";
  51.     $mensaje = "Email: " . $Email . " \r\n";
  52.     $mensaje = "Asunto: " . $Asunto . " \r\n";
  53.     $mensaje = "Mensaje: " . $Mensaje . " \r\n";
  54.     $mensaje = "Enviado el " . date("d/m/y \a \l\a\s H:i:s ");
  55.     $para = '[email protected]';
  56.     mail($para, utf8_decode($mensaje), $header);
  57.     echo "Su mensaje se ha enviado correctamente";
  58. }
  59. ?>  
  60.     <div id="banner">
  61.         <img src="images/banner.gif"></img>
  62.     </div>
  63.     <div id="menu">
  64.         <ul>
  65.             <li><a href="index.html">inicio</a>
  66.             <li><a href="firmas.html">firmas</a>
  67.             <li><a href="productos.html">productos</a>
  68.             <li><a href="descargas.html">descargas</a>
  69.             <li><a href="contacto.php">contacto</a>
  70.         </ul>
  71.     </div> 
  72.     <div id="contacto">
  73.         <h1>Jes&uacute;s Suviri</h1>
  74.         Telf. 610 725 255<br>
  75.         Fax. 952 411 242<br>
  76.         Mail: [email protected]<br>
  77.         M&Aacute;LAGA
  78.     </div> 
  79.     <hr>
  80.     <div id="formulario">
  81.         <p>Puede contactar tambi&eacute;n rellenando el siguiente formulario con los datos solicitados.</p>
  82.         <form name="formulario" action="contacto.php" method="post" onsubmit="return validacion()">
  83.             <label for="nombre">Nombre: </label><input type="text" size="50" value="" id="nombre" name="nombre" /><br />
  84.             <label for="email">Email: </label><input type="text" size="50" value="" id="email" name="email" /><br />
  85.             <label for="asunto">Asunto: </label><input type="text" size="50" id="asunto" name="asunto" /><br />
  86.             <label for="mensaje">Mensaje:</label><textarea cols="37" rows="10" id="mensaje" name="asunto"></textarea><br />
  87.             <input type="submit" value="Enviar" class="boton" name="enviar" />
  88.             <input type="reset" value="Limpiar" class="boton" />
  89.         </form>
  90.     </div> 
  91.     <div id="copyright">
  92.     Dise&ntilde;ado por Abel Suviri ([email protected])
  93.     </div>
  94. </body>
  95. </html>
  #21 (permalink)  
Antiguo 26/03/2013, 10:06
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Ademas seria bueno que le colocaras asunto al correo....
  #22 (permalink)  
Antiguo 26/03/2013, 10:14
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Sigue fallando la línea del $Mensaje = $_POST['mensaje'];
__________________
Memoria, Compromiso, Fe
  #23 (permalink)  
Antiguo 26/03/2013, 10:17
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Pero cuando dices sigue fallando te referis a??????
  #24 (permalink)  
Antiguo 26/03/2013, 10:20
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Mira tienes que ser mas cuidadoso, porque revisando tu codigo veo que el textarea no se llama mensaje, se llama asunto por lo tanto cuando haces $_POST["mensaje"] aqui no vas a recibir nada porque no existe ningun campo que se llame asi en el formulario
  #25 (permalink)  
Antiguo 26/03/2013, 10:21
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Cita:
Iniciado por alex1084 Ver Mensaje
Pero cuando dices sigue fallando te referis a??????
Al pulsar mandar el formulario me aparece el error porque le puse error_reporting(E_ALL); al inicio del código para que me reporte todos los errores. Además el correo no me llega al mail ni en bandeja de entrada ni en spam.
__________________
Memoria, Compromiso, Fe
  #26 (permalink)  
Antiguo 26/03/2013, 10:23
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Cita:
Iniciado por alex1084 Ver Mensaje
Mira tienes que ser mas cuidadoso, porque revisando tu codigo veo que el textarea no se llama mensaje, se llama asunto por lo tanto cuando haces $_POST["mensaje"] aqui no vas a recibir nada porque no existe ningun campo que se llame asi en el formulario
Ya modifiqué eso y ya no me aparece error. Ahora solo toca cruzar los dedos y que me llegue el mail al correo.
__________________
Memoria, Compromiso, Fe
  #27 (permalink)  
Antiguo 26/03/2013, 11:24
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.270
Antigüedad: 5 años, 5 meses
Puntos: 149
Respuesta: Error con mail()

No entiendo para que postee tanto si al final tu codigo sigue igual que al principio... Pasa que no seguiste ninguna de mis sugerencias, espero que al menos uses este codigo... revisa tu email... ahi veras mi mensaje.. modifique tu header para que este mas correcto, y cambie varias cosas como los espacios entre los puntos y demas... si te llego mi mail, es que funciona.



Código PHP:
if(isset($_POST['enviar'])){
$Nombre $_POST['nombre'];
$Email $_POST['email'];
$Asunto $_POST['asunto'];
$Mensaje $_POST['mensaje'];
$header ="MIME-Version:1.0\nContent-type:text/html;charset=UTF-8\nFrom:".$_POST['email']."<br/>";
$mensaje "Nombre: ".$Nombre."<br/>";
$mensaje .= "Email: ".$Email."<br/>";
$mensaje .= "Asunto: ".$Asunto ."<br/>";
$mensaje .= "Mensaje: ".$Mensaje."<br/>";
$mensaje .= "Enviado el " .date("d/m/y \a \l\a\s H:i:s ");
$para '[email protected]';


 if(
mail($para,$Asuntoutf8_decode($mensaje), $header)){
     echo 
"Su mensaje se ha enviado correctamente";
 }else{
      
 }

y en el HTML dejalo asi:


Código HTML:
<div id="formulario">
		<p>Puede contactar tambi&eacute;n rellenando el siguiente formulario con los datos solicitados.</p>
		<form name="formulario" action="" method="post" onsubmit="return validacion()">
			<label for="nombre">Nombre: </label><input type="text" size="50" value="" id="nombre" name="nombre" /><br />
			<label for="email">Email: </label><input type="text" size="50" value="" id="email" name="email" /><br />
			<label for="asunto">Asunto: </label><input type="text" size="50" id="asunto" name="asunto" /><br />
			<label for="mensaje">Mensaje:</label><textarea cols="37" rows="10" id="mensaje" name="asunto"></textarea><br />
			<input type="submit" name="enviar" value="Enviar" class="boton" />
			
		</form>
	</div> 
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #28 (permalink)  
Antiguo 26/03/2013, 11:54
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

Yo he ido siguiento todos los consejos que me han ido dando, porque si no nunca me funcionaria el envio del formulario. Puede que en algún momento me haya confundido y haya subido el código del notepad en vez del que tengo en la web.
El correo que me mandaste me ha llegado correctamente, pero ahora he copiado el código que pusiste y sigue sin llegarme unos cuantos formularios de prueba que me he mandado. Para que no haya dudas, el código de PHP que tengo en la web es:
Código PHP:
<?php
if(isset($_POST['enviar'])){
$Nombre $_POST['nombre'];
$Email $_POST['email'];
$Asunto $_POST['asunto'];
$Mensaje $_POST['mensaje'];
$header ="MIME-Version:1.0\nContent-type:text/html;charset=UTF-8\nFrom:".$_POST['email']."<br/>";
$mensaje "Nombre: ".$Nombre."<br/>";
$mensaje .= "Email: ".$Email."<br/>";
$mensaje .= "Asunto: ".$Asunto ."<br/>";
$mensaje .= "Mensaje: ".$Mensaje."<br/>";
$mensaje .= "Enviado el " .date("d/m/y \a \l\a\s H:i:s ");
$para '[email protected]';


 if(
mail($para,$Asuntoutf8_decode($mensaje), $header)){
     echo 
"Su mensaje se ha enviado correctamente";
 }else{
      
 }
}  
?>
y el código HTML del formulario es:
Código HTML:
<div id="formulario">
		<p>Puede contactar tambi&eacute;n rellenando el siguiente formulario con los datos solicitados.</p>
		<form name="formulario" action="" method="post" onsubmit="return validacion()">
			<label for="nombre">Nombre: </label><input type="text" size="50" value="" id="nombre" name="nombre" /><br />
			<label for="email">Email: </label><input type="text" size="50" value="" id="email" name="email" /><br />
			<label for="asunto">Asunto: </label><input type="text" size="50" id="asunto" name="asunto" /><br />
			<label for="mensaje">Mensaje:</label><textarea cols="37" rows="10" id="mensaje" name="asunto"></textarea><br />
			<input type="submit" name="enviar" value="Enviar" class="boton" />
		</form>
	</div> 
Muchas gracias por tu ayuda loncho_rojas y siento si ha parecido que no he usado tus consejos, pero los he usado uno por uno y no se como he podido volver al código del principio. Gracias de nuevo
__________________
Memoria, Compromiso, Fe
  #29 (permalink)  
Antiguo 26/03/2013, 11:58
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 735
Antigüedad: 6 años
Puntos: 47
Respuesta: Error con mail()

Entonces es problema de tu hosting que no permite el envio de correos
  #30 (permalink)  
Antiguo 26/03/2013, 12:03
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Alhaurín de la Torre (Málaga)
Mensajes: 121
Antigüedad: 1 año
Puntos: 5
Respuesta: Error con mail()

loncho_rojas, ¿cómo has enviado tu mail?¿has subido el archivo a algún hosting? en caso de ser así dime que hosting es para cambiar mi web de hosting.
Gracias
__________________
Memoria, Compromiso, Fe

Etiquetas: formulario, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:45.
SEO by vBSEO 3.3.2