Foros del Web » Programando para Internet » PHP »

funcion Mail()...¿qué necesito para que funcione?

Estas en el tema de funcion Mail()...¿qué necesito para que funcione? en el foro de PHP en Foros del Web. Hola a todos. Cuando trato de enviar un email con la función mail() tengo el siguiente error: "Warning: mail() [function.mail]: Failed to connect to mailserver ...
  #1 (permalink)  
Antiguo 22/11/2007, 11:28
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
funcion Mail()...¿qué necesito para que funcione?

Hola a todos.

Cuando trato de enviar un email con la función mail() tengo el siguiente error:

"Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() "

Por lo que he visto en el foro este es un tema muy recurrente. A pesar de que me he leído un montón de respuestas todavía no tengo claro lo que necesito para poder mandar emails.

Estoy trabajando con un servidor LOCAL Apache (Wamp5) y no tengo instalado ningún servidor SMTP...¿Tengo que obligatoriamente instalar un servidor SMTP? ¿Puedo usar la dirección smtp de yahoo o hotmail usando mi clave de acceso a estos correos (no sé si estoy diciendo una tonteria)? En ambos casos...tendría que tocar el archivo php.ini?

En caso de que tenga que usuar un servidor SMTP y teniendo en cuenta uso Apache...¿Cuál me recomendáis ? (uno que se fácil y simple).

Un saludo a todos y muchas gracias.
  #2 (permalink)  
Antiguo 22/11/2007, 11:51
 
Fecha de Ingreso: noviembre-2007
Mensajes: 24
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: funcion Mail()...¿qué necesito para que funcione?

hola albertoshu no tengo mucha experiencia pero por lo q lei creo q tenes q usar la variable
ini_set() y tenes un problema con el puerto 25 para el envio de mails(smtp),mepa q vas a tener q mpodificar el php.ini igual proba con ini_set()

que seria

ini_set(sendmail_from,'contacto@dominio');

eje: ini_set(sendmail_from,'[email protected]');

esta variable va antes de la funcion mail()


eje:


<?php

$remitente = $_REQUEST["email"];
$asunto = "hola";
$mensaje = "prueba";
$header = 'From: [email protected]';

ini_set(sendmail_from,'[email protected]');

mail($destino,$asunto,$mensaje,$header);
?>

fijate si se te va el error con esa variable, y contame q pasa.

saludos!!
  #3 (permalink)  
Antiguo 22/11/2007, 11:57
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Muchas gracias por tu respuesta, Valen_87.

Entonces...no necesito instalarme un servidor smtp?
  #4 (permalink)  
Antiguo 22/11/2007, 12:21
 
Fecha de Ingreso: noviembre-2007
Mensajes: 24
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: funcion Mail()...¿qué necesito para que funcione?

yo creo que no, probaste con esa variable?si seguis teniendo el mismo error fijate de modificar el php.ini, pero yo creo con esa variable es suficiente, cualquier cosa avisa!!

saludos!!
  #5 (permalink)  
Antiguo 22/11/2007, 12:23
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: funcion Mail()...¿qué necesito para que funcione?

Puedes usar un servidor como el Mini Relay para retransmitir los mensajes a otro servidor de paga o en otra computadora.

Saludos.
  #6 (permalink)  
Antiguo 22/11/2007, 13:50
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Cita:
Iniciado por valen_87 Ver Mensaje
yo creo que no, probaste con esa variable?si seguis teniendo el mismo error fijate de modificar el php.ini, pero yo creo con esa variable es suficiente, cualquier cosa avisa!!

saludos!!
Ya lo he probado pero me sigue dando el mismo error.

muchas gracias de todas formas.

seguiré probando cosas.
  #7 (permalink)  
Antiguo 22/11/2007, 13:52
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Cita:
Iniciado por GatorV Ver Mensaje
Puedes usar un servidor como el Mini Relay para retransmitir los mensajes a otro servidor de paga o en otra computadora.

Saludos.
Entonces...necesito dos servidores? (el miniRelay y otro de pago?)
  #8 (permalink)  
Antiguo 22/11/2007, 13:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: funcion Mail()...¿qué necesito para que funcione?

No, puedes instalar un servidor en tu computadora (busca en Google Free SMTP), aunque ten en cuenta que es muy probable que todo tu mail llegue como SPAM ya que viene de una IP Dinamica.

Saludos.
  #9 (permalink)  
Antiguo 22/11/2007, 14:01
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

De momento no tengo problema por lo del spam (es para hacer pruebas).

Voy a buscarlo en google tal y como dices.

muchas gracias por tu respuesta.
  #10 (permalink)  
Antiguo 22/11/2007, 14:42
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Cita:
Iniciado por GatorV Ver Mensaje
No, puedes instalar un servidor en tu computadora (busca en Google Free SMTP), aunque ten en cuenta que es muy probable que todo tu mail llegue como SPAM ya que viene de una IP Dinamica.

Saludos.
Hola GatorV,

Ya he instalado el programa, pero cuando ejecuto el php

Código PHP:
$asunto "hola";
$mensaje "prueba";
$header 'From: [email protected]';
$destino="[email protected]";

mail($destino,$asunto,$mensaje,$header); 
para que se envie el email me salta una ventanita del "Proxi de correo de Symantec"(mi antivirus) que dice:

"No se pudo envia su mensaje de correo electrónico, el servidor de correo rechazó el mensaje: 550 Invalid recipient: [email protected]"

Te suena este error?

un saludo.
  #11 (permalink)  
Antiguo 22/11/2007, 14:56
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
De acuerdo Re: funcion Mail()...¿qué necesito para que funcione?

Añadiendo la linea que me dijo Valen_87

Código PHP:
ini_set(sendmail_from,'[email protected]'); 
y usando el servidor que me dijo GatorV...

Ya me funciona!!!

Muchas gracias a los 2.
  #12 (permalink)  
Antiguo 23/11/2007, 07:03
 
Fecha de Ingreso: noviembre-2007
Ubicación: Córdoba
Mensajes: 70
Antigüedad: 16 años, 5 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Hola.

Claro que también puedes usar la clase PHPMailer (http://phpmailer.codeworxtech.com) la cual te permite usar la función mail de php o también conectarse a un servidor vía SMTP y enviar a través de él tus correos, por lo que no necesitarías instalar ningún servidor SMTP en tu pc y evitarías el problema del rechazo que algunos servidores receptores hacen por tener la IP dinámica, ya que el que envía el correo es tu servidor habitual.

Saludos.
  #13 (permalink)  
Antiguo 23/11/2007, 07:42
Avatar de hulray  
Fecha de Ingreso: septiembre-2006
Mensajes: 630
Antigüedad: 17 años, 7 meses
Puntos: 3
Re: funcion Mail()...¿qué necesito para que funcione?

Mira te explico lo que me pasa a mi.

Yo instale el appserv, lo uso en la intranet y me sale el mismo error que a ti. Lo subi a un dominio de internet y me funciona perfectamente.
  #14 (permalink)  
Antiguo 23/11/2007, 10:35
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: funcion Mail()...¿qué necesito para que funcione?

Cita:
Iniciado por javierav Ver Mensaje
Hola.

Claro que también puedes usar la clase PHPMailer (http://phpmailer.codeworxtech.com) la cual te permite usar la función mail de php o también conectarse a un servidor vía SMTP y enviar a través de él tus correos, por lo que no necesitarías instalar ningún servidor SMTP en tu pc y evitarías el problema del rechazo que algunos servidores receptores hacen por tener la IP dinámica, ya que el que envía el correo es tu servidor habitual.

Saludos.
Gracias por tu respuesta.

También me parece una buana opción. La voy a probar.

Así da gusto!!!
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 06:37.