jseba84 Posted May 15, 2013 Report Share Posted May 15, 2013 Hola a todos Estoy tratando de usar phpmailer pero no logro configurarlo o mejor dicho no logro que envíe el correo. Agradeceria que alguien me guiara en esto. Resumen breve: al phpmailer solo llamo. <?php //incluimos la clase PHPMailer require_once('../class.phpmailer.php'); //instancio un objeto de la clase PHPMailer $mail = new PHPMailer(); // defaults to using php "mail()" //defino el cuerpo del mensaje en una variable $body //se trae el contenido de un archivo de texto //también podríamos hacer $body="contenido..."; //$body = file_get_contents('contenido.html'); $body = "HOLA"; //Esta línea la he tenido que comentar //porque si la pongo me deja el $body vacío // $body = preg_replace('/[]/i','',$body); //defino el email y nombre del remitente del mensaje $mail>SetFrom('[email protected]', 'Fuser Ducupacsao'); //defino la dirección de email de "reply", a la que responder los mensajes //Obs: es bueno dejar la misma dirección que el From, para no caer en spam $mail>AddReplyTo("[email protected]","Fuser Ducupacsao"); //Defino la dirección de correo a la que se envía el mensaje $address = "[email protected]"; //la añado a la clase, indicando el nombre de la persona destinatario $mail>AddAddress($address, "Seba Perez"); //Añado un asunto al mensaje $mail>Subject = "Envío de email con PHPMailer en PHP"; //Puedo definir un cuerpo alternativo del mensaje, que contenga solo texto $mail>AltBody = "Cuerpo alternativo del mensaje"; //inserto el texto del mensaje en formato HTML $mail>MsgHTML($body); //asigno un archivo adjunto al mensaje //$mail>AddAttachment("ruta/archivo_adjunto.gif"); //envío el mensaje, comprobando si se envió correctamente if(!$mail>Send()) { echo "Error al enviar el mensaje: " . $mail>ErrorInfo; } else { echo "Mensaje enviado!!"; } ?> y me arroja el error "Fatal error: Call to undefined function SetFrom() in /home/shopstor/public_html/requerimiento/contacto/examples/test_mail_basic.php on line 18" Desde ya muchas gracias por su tiempo. Link to comment Share on other sites More sharing options...
RALCN Posted May 15, 2013 Report Share Posted May 15, 2013 (edited) Creo que estás utilizando la versión phpmailar que no contiene setfrom Debes descargar esta Edited May 15, 2013 by RALCN Link to comment Share on other sites More sharing options...
jseba84 Posted May 15, 2013 Author Report Share Posted May 15, 2013 Hola RALCN llamé a función que me dejaste para descargar pero me arroja el mismo error. Se debe realizar una configuración en el class.phpmailer.php ? Muchas gracias. Link to comment Share on other sites More sharing options...
RALCN Posted May 15, 2013 Report Share Posted May 15, 2013 Ese es el único error que te aparece ?No me había fijado en algo...Reemplaza los > por -> quizás la versión de php no te acepta > solamente. (trata de no hacer copypast de otros sitios para utilizar y programa tu mismo las cosas, así evitas tener errores tontos). Link to comment Share on other sites More sharing options...
jseba84 Posted May 18, 2013 Author Report Share Posted May 18, 2013 (edited) Fabuloso!Con este código funcionó perfecto. $mail = new phpmailer(); $mail->Mailer = "smtp"; $mail->Host = "Servidor de Correo"; $mail->Username = "Usuarios del Correo"; $mail->Password = "Contraseña de Correo"; $mail->From = "Correo Electronico de donde se enviaran "; $mail->FromName = "Nombre asociado al correo"; $mail->Timeout=60; $mail->AddAddress($destino);//en la variable puse 2 correo pero da error, pero se puede agregar mas de un AddAddress $mail->AddCC($copia);//lo mismo, puede agregar una linea adicional AddCC para otro mail. Copia oculta es AddBC $mail->Subject = "Asunto del correo"; $mail->Body = $contenido;//cuerpo del correo, puede usar tag de html $mail->AltBody = $contenido1;// texto alternativo en el caso que el destinatario no admita formato html $exito = $mail->Send(); $intentos=1; while ((!$exito) && ($intentos < 5)) { sleep(5); echo $mail->ErrorInfo; $exito = $mail->Send(); $intentos=$intentos+1; } if(!$exito){ echo "Problemas enviando correo electrónico a ".$valor; echo "<br/>".$mail->ErrorInfo; }else { echo "Mensaje enviado correctamente"; } Muchas gracias! (favor cerrar) Edited May 18, 2013 by jseba84 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now