Foros del Web » Programando para Internet » PHP »

no consigo hacer funcionar la funcion mail de php...

Estas en el tema de no consigo hacer funcionar la funcion mail de php... en el foro de PHP en Foros del Web. Hola estoy intentando probar la funcion mail de php en modo local pero no lo consigo, utilizo el programa argomailserver, ya que trabajo con windows, ...
  #1 (permalink)  
Antiguo 02/02/2012, 12:28
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
no consigo hacer funcionar la funcion mail de php...

Hola estoy intentando probar la funcion mail de php en modo local pero no lo consigo, utilizo el programa argomailserver, ya que trabajo con windows, cree una cuenta para poder mandar los email, el codigo de prueba es este:

Código PHP:
Ver original
  1. <?php
  2. $destinatario='[email protected]';
  3. $asunto='prueba';
  4. $mensaje='esto es una prueba';
  5. if (mail($destinatario, $asunto, $mensaje)){
  6.     echo 'envio correcto';
  7. }else{
  8.     echo 'error';
  9. }
  10. ?>

el error que me da php es este:

( ! ) Warning: mail() [function.mail]: SMTP server response: 551 User not local. We don't relay in C:\wamp\www\email.php on line 5

espero que me puedan orientar con mi problema, saludos.
  #2 (permalink)  
Antiguo 02/02/2012, 12:47
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 6 meses
Puntos: 394
Respuesta: no consigo hacer funcionar la funcion mail de php...

El error ess claro, el servidor SMTP que estas intentando utilizar no permite RELAY, investiga que servidores lo soportan en este momento para que puedas usarlos o instala un server de correo en tu maquina para enviar correos.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #3 (permalink)  
Antiguo 02/02/2012, 12:54
 
Fecha de Ingreso: diciembre-2011
Ubicación: Bogota - Colombia
Mensajes: 11
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: no consigo hacer funcionar la funcion mail de php...

Prueba utilizando la libreria SMTP Mailer de php y pruebalo en un servidor Online no Local. Un Saludo.
  #4 (permalink)  
Antiguo 02/02/2012, 12:55
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Hola jotaincubus, eso es lo que hice instalar el argomailserver, incluso cree una cuenta para poder enviar los mail con php, pero no se que hice mal, alguna idea, saludos.
  #5 (permalink)  
Antiguo 02/02/2012, 12:57
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Cita:
Iniciado por FernandoSP Ver Mensaje
Prueba utilizando la libreria SMTP Mailer de php y pruebalo en un servidor Online no Local. Un Saludo.
de momento quiero aprender a mandar email de forma sencilla, sin ninguna clase, y referente a mandar email en un servidor online, no tengo ninguno para aprender prefiero en modo local, quizas tengo que configurar algo en php.ini, o comprobar algo en el argomailserver, cualquier ayuda se agradece, saludos.
  #6 (permalink)  
Antiguo 02/02/2012, 13:34
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

en el argomailserver me da este error:

error starting web server address already in use

cualquier ayuda se agradece saludos.
  #7 (permalink)  
Antiguo 02/02/2012, 13:37
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 6 meses
Puntos: 394
Respuesta: no consigo hacer funcionar la funcion mail de php...

La verdad nunca he usado ese software, mira este manual a ver si puedes ayudarte un poco
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #8 (permalink)  
Antiguo 02/02/2012, 13:41
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: no consigo hacer funcionar la funcion mail de php...

por ejemplo usar PHPmailer no le quitará lo sencillo, quizás SwiftMailer es un poco más complicado, pero en definitiva la función nativa mail de php te limita mucho.

incluso con las clases anteriores puedes usar tu cuenta de Gmail como SMTP externo, antes de probar con uno propio o de hosting

NOTA: PhpMailer es soportado hasta PHP 5.2
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #9 (permalink)  
Antiguo 02/02/2012, 13:51
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: no consigo hacer funcionar la funcion mail de php...

Cita:
Iniciado por roboty Ver Mensaje
de momento quiero aprender a mandar email de forma sencilla, sin ninguna clase, y referente a mandar email en un servidor online, no tengo ninguno para aprender prefiero en modo local, quizas tengo que configurar algo en php.ini, o comprobar algo en el argomailserver, cualquier ayuda se agradece, saludos.
NO SE PUEDE a menos que tengas un servidor local con una IP Publica o parecida... o sea, si lo que intentas es enviar un mail a traves del LOCALHOST te seguiras frustrando amigo...
__________________
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...
  #10 (permalink)  
Antiguo 02/02/2012, 13:52
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Cita:
Iniciado por jotaincubus Ver Mensaje
La verdad nunca he usado ese software, mira este manual a ver si puedes ayudarte un poco
mil gracias por ese manual parece que puede resolver mis dudas, saludos.
  #11 (permalink)  
Antiguo 02/02/2012, 13:53
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Hola maycolalvarez, gracias por tu colaboracion, me mirare la la clase phpmailer, saludos.
  #12 (permalink)  
Antiguo 02/02/2012, 13:55
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Cita:
Iniciado por loncho_rojas Ver Mensaje
NO SE PUEDE a menos que tengas un servidor local con una IP Publica o parecida... o sea, si lo que intentas es enviar un mail a traves del LOCALHOST te seguiras frustrando amigo...
tengo instalado el wampserver en mi maquina, instale el argomailserver, quieres decir que no es posible utilizar la funcion mail de php, perdona pero no entendi bien, yo lo que intento es enviar un email con php, pero solo fingir que se envia, aunque no llege a su destino,pero php me da error, saludos.
  #13 (permalink)  
Antiguo 02/02/2012, 14:14
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: no consigo hacer funcionar la funcion mail de php...

tengo entendido que en el localhost (wamperver, lamp, Xamp, app serv) no se puede enviar ni simular envio..

La clase PHPMailer si te permite enviar un email utilizando un server SMTP como tu email de gmail por ejemplo...

bajate la libreria PHPMailer, y cambia la ruta del include, tu usuario de gmail y tu clave y verifica si funciona, no es complicado como parece..

La funcion MAIL si enviara el mail siempre y cuando tengas un servidor que soporte el envio de mail

Código PHP:
<?php
//ahora el codigo que enviara el mail de vcerificaion 
//Para el envio del mail, yo use la clase phpMailer  :-D ... 
//asi que te posteare codigo con esa clase ( io no uso la funcion mail() ) 

require("../phpMailer/class.phpmailer.php"); //Busca este archivo en el google. Es el archivo d la clase phpmailer, que viene con otro llamado class.smtp.php 
$mail = new PHPMailer();
$mail->PluginDir "phpMailer/"//Aqui el doirectorio dnd se encuentra el archivo class.smtp.php 
$mail->Mailer "smtp";
$mail->IsSMTP();
$mail->Host 'ssl://smtp.gmail.com';
$mail->Port 465;
$mail->SMTPAuth true//Supongo que puede ir false si usas localhost 
$mail->Username "usuarioDeGmailSinArroba"//Usuario del servidor smtp. Supongo que puede ir vacio si usas localhost 
$mail->Password "***********"//Contraseña en el servidor smtp. Supongo que puede ir vacio si usas localhost 
$mail->From "[email protected]";//Direccion from de envio 
    
$mail->FromName "Prueba";
        
$mail->Timeout 40//El tiempo en segundos que tratara de enviar el mensaje antes de marcar error. SI tu mensaje es grande, dejalo donde esta, pero si es simple puedes bajarlo 
$mail->AddAddress("$email"); //Aqui va el email al que envias el mensaje. Como viene de un formulario, pones $_POST[nombre del campo del email] 
$mail->Subject "Confirme su email de registro"//asunto de tu mensaje 

//AQUI VA EL BODY DEL MENSAJE EN HTML...
$body "<p style='font-family: Trebuchet MS'>Este es un email para verificar su cuenta creada en el Grupo Editorial Atlas</p>";
$body.= "<p style='font-family: Trebuchet MS'>este es el texto de prueba</p>";

$mail->Body $body;

//AQUI VA UN BODY ALTERNATIVO; EN FORMATO SOLO TEXTO; SIN HTML 
$mail->AltBody "Verifica tu email en http://192.168.0.66/users/verificar.php?MailKey=".$mkey." Gracias"
$exito $mail->Send(); //Envias el mail, y si todo sale correcto exito tendra un valor X 
    
while ((!$exito) && ($intentos<5)) //Ese 5 es el numero de intentos de enviar el mensaje, en caso de que falle al primer intento 
    

        
sleep(5); //Mismo 5 que el de arriba (intentos) 
        //echo $mail->ErrorInfo; 
        
$exito $mail->Send(); 
        
$intentos=$intentos+1;     
    } 

    if(!
$exito//Si exito esta vacio, es que hubo problemas al enviar el mensaje 
    

        echo 
"Problemas enviando correo electrónico a ".$email
        echo 
"<br />".$mail->ErrorInfo;     
    } 
    else 
//SI el envio fue correcto.... 
    

        echo 
"<p style='font-family:Trebuchet MS'>
                    Hemos enviado una verificación a su e-mail para culminar el proceso de registro.
                    <br />
                    Si observa que <strong>no</strong> llega ninguna verificación, tal vez el mismo haya caído en la sección de SPAM o Correo No Deseado de sus filtros de correo
             </p>"

    } 
?>
__________________
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...
  #14 (permalink)  
Antiguo 02/02/2012, 14:29
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: no consigo hacer funcionar la funcion mail de php...

Cita:
Iniciado por roboty Ver Mensaje
tengo instalado el wampserver en mi maquina, instale el argomailserver, quieres decir que no es posible utilizar la funcion mail de php, perdona pero no entendi bien, yo lo que intento es enviar un email con php, pero solo fingir que se envia, aunque no llege a su destino,pero php me da error, saludos.
se puede siempre y cuando configures un SMTP en windows, se puede, así cierres el puerto 25 de salida para que el mail no se envie en realidad, o que el SMTP lo configures para sólo retener los mails.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #15 (permalink)  
Antiguo 03/02/2012, 13:23
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Hola gracias a todos, ya lo consegui usar la funcion mail en modo local, aunque estoy probando la clase phpMailer pero me gustaria saber si en body donde se puede incluir html puedo incluir tambien una imagen, saludos.
  #16 (permalink)  
Antiguo 03/02/2012, 15:20
Avatar de Deathmetalrules  
Fecha de Ingreso: diciembre-2010
Ubicación: Mas - aya
Mensajes: 65
Antigüedad: 13 años, 11 meses
Puntos: 8
Respuesta: no consigo hacer funcionar la funcion mail de php...

Podrias postear tu solucion xfa!
__________________
Un nuevo horizonte
  #17 (permalink)  
Antiguo 03/02/2012, 15:40
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 11 meses
Puntos: 20
Respuesta: no consigo hacer funcionar la funcion mail de php...

podrias Aportar y decir como lo hiciste!!! muchas gracias
  #18 (permalink)  
Antiguo 06/02/2012, 06:44
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: no consigo hacer funcionar la funcion mail de php...

Hola, yo lo que hice es configurar un cliente en el argo mail server con por ejemplo [email protected] y despues en mi correo cliente configuro un usuario con el mismo nombre [email protected] y en el smtp y pop poner la ip local osea 127.0.0.1, espero que hos sirva de ayuda y podais conseguirlo, saludos.

Etiquetas: funcion, funcionar, mail
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 12:08.