Foros del Web » Programando para Internet » PHP »

enviar correos php

Estas en el tema de enviar correos php en el foro de PHP en Foros del Web. Buen dia a todos, estoy tratando de enviar correos con php, estoy trabajando en windos xp, ya bajé el mini relay y lo descomprimi en ...
  #1 (permalink)  
Antiguo 08/09/2012, 12:28
 
Fecha de Ingreso: julio-2012
Ubicación: Guatemala
Mensajes: 99
Antigüedad: 12 años, 4 meses
Puntos: 2
Pregunta enviar correos php

Buen dia a todos, estoy tratando de enviar correos con php, estoy trabajando en windos xp, ya bajé el mini relay y lo descomprimi en la carpeta donde tengo todos mis archivos para ejecutar mi pagina, en uno de ellos escribi lo siguiente:

<?php
mail('[email protected]','Correo prueba','Correo prueba');
?>

y me sale este error

Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing

en el php.ini tengo lo siguiente:

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = postmaster@localhost
  #2 (permalink)  
Antiguo 08/09/2012, 14:35
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 18 años, 6 meses
Puntos: 58
Respuesta: enviar correos php

Código PHP:
Ver original
  1. ;sendmail_from = postmaster@localhost
quita el punto y coma inicial y cambia por una dirección de que correo que no sea hotmail o similar.
  #3 (permalink)  
Antiguo 08/09/2012, 17:28
 
Fecha de Ingreso: julio-2012
Ubicación: Guatemala
Mensajes: 99
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: enviar correos php

muchas gracias josss, cambie como dijiste,

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = [email protected] //no importa que no sea real?

pero me salió el mismo error...porque no pueden ser correos de hotmail?
  #4 (permalink)  
Antiguo 08/09/2012, 17:38
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 15 años
Puntos: 168
Respuesta: enviar correos php

Supongo que es claro lo que dice el php ini.
for win32 only.

No será que estás usando php en un entorno que es Linux? si tenes wamp ó xampp por ejemplo, estas usando un entorno LAMP ( Linux Apache Mysql Php ) por lo tanto esa cabecera no la usas, usa las las de linux http://php.net/manual/es/function.mail.php
Te dejo un ejemplo del manual donde utiliza la cabecera From

Código PHP:
Ver original
  1. <?php
  2. $para      = '[email protected]';
  3. $titulo = 'El título';
  4. $mensaje = 'Hola';
  5. $cabeceras = 'From: [email protected]' . "\r\n" .
  6.     'Reply-To: [email protected]' . "\r\n" .
  7.     'X-Mailer: PHP/' . phpversion();
  8.  
  9. mail($para, $titulo, $mensaje, $cabeceras);
  10. ?>

Cita: "Nota:

Cuando se envía un correo, el correo debe contener una cabecera From. Puede establecerse con el parámetro additional_headers, o puede definirse un valor por defecto en php.ini.

Si no se realiza esta acción se obtendrá un mensaje de error similar a Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing. La cabecera From también establece Return-Path bajo Windows."
  #5 (permalink)  
Antiguo 08/09/2012, 18:10
 
Fecha de Ingreso: julio-2012
Ubicación: Guatemala
Mensajes: 99
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: enviar correos php

muchas gracias rodrigo, varias veces me has ayudado, ya estoy a punto de terminar mi pagina, unicamente me encuentro en la validacion de los usuarios, quiero mandar un correo para la confirmacion de su usuario pero ahi estoy trabado... puse lo que sugeriste, unicamente cambie la direccion de correo:

<?php
$para = '[email protected]';
$titulo = 'El título';
$mensaje = 'Hola';
$cabeceras = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail($para, $titulo, $mensaje, $cabeceras);

?>

y me tiro este aviso:

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() on line 10

y si, estoy utilizando XAMPP

Última edición por ANDRESDD; 08/09/2012 a las 18:30
  #6 (permalink)  
Antiguo 08/09/2012, 18:57
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 15 años
Puntos: 168
Respuesta: enviar correos php

el problema dice que tenes algo ahí con el servidor smtp, ( servidor que envía los correos ) debe ser porque si lo probaste local no tendras instalado uno, pero probalo en tu hosting el mismo código que tus proveedores de hosting ya deben dartelo instalado siempre y no tendrás problemas!
  #7 (permalink)  
Antiguo 08/09/2012, 22:32
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: enviar correos php

Si estás tratando de enviar los correos desde tu propio equipo debes instalar un servidor de correos, en este caso, un SMTP como http://www.softstack.com/freesmtp.html
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: correo
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 22:12.