Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Txispitas en 19 de Febrero 2018, 16:15
-
Buenas: necesito enviar correos desde un formulario en AS3, pare ello uso PHP y en principio usaba el método mail(), el problema es que no me permite enviar el correo a mas de 5 destinatarios y Yo necesito enviar a 10, el mismo correo a los 10 ya que lo que conteste cualquiera de ellos debe de ser accesible al resto.
Tras leer y leer veo que mi solución pasa por usar PHPmailer(), pero no soy capad de hacerlo funcionar.
Mi hosting es Hostinger, que trabaja con PHP 5.6. he creado una carpeta en la raíz llamada "Clases/" y dentro de ella he colocado "class.phpmailer.php" y class.smtp.php" (lo he sacado de otra pagina web y no se si estas clases son siempre las mismas o dependen también de la versión de PHP).
Después he subido mi código, el cual adjunto, pero al ejecutarlo con el navegador me devuelve un error..
Parse error: syntax error, unexpected '$mail' (T_VARIABLE) in /home/u127618950/public_html/sendMail.php on line 14
La línea 14 es la que dice....
$mail->IsSMTP();
Si anulo esta línea poniendo delante //, el error pasa a la siguente linea, exactamente el mismo error pero esta vez para la línea 15
Alguien tiene idea de que es lo que hago mal?
<?php
require 'Clases/class.phpmailer.php';
require 'Clases/class.smtp.php';
$mail = new PHPMailer();
$email = "correo1@correo.com";
$asunto = "Prueba de PHPmailer";
$cuerpo = "Esto es una prueba antes de hacer nada más."
//Luego tenemos que iniciar la validación por SMTP:
$mail->IsSMTP();
$mail->SMTPAuth = true;
$smtp->SMTPSecure = "tls";
$smtp->Host = "smtp-mail.outlook.com";//SMTP a utilizar.
$mail->Username = "correo2@outlook.com"; // Correo completo a utilizar
$mail->Password = "xxxxxxxx"; // Contraseña
$mail->Port = 587; // Puerto a utilizar
//Con estas pocas líneas iniciamos una conexión con el SMTP. Lo que ahora deberíamos hacer, es configurar el mensaje a enviar, el //From, etc.
$mail->From = $email; // Desde donde enviamos (Para mostrar)
$mail->FromName = "Nombre";
//Estas dos líneas, cumplirían la función de encabezado (En mail() usado de esta forma: “From: Nombre <correo@dominio.com>”) de //correo.
$mail->AddAddress("correo3@correo.com"); // Esta es la dirección a donde enviamos
$mail->Subject = $asunto; // Este es el titulo del email.
$mail->Body = $cuerpo; // Mensaje a enviar
$mail->AltBody = "Hola"; //$cuerpo; // Mensaje a enviar
$exito = $mail->Send(); // Envía el correo.
//También podríamos agregar simples verificaciones para saber si se envió:
if($exito){
echo ‘El correo fue enviado correctamente.’;
}else{
echo ‘Hubo un inconveniente. Contacta a un administrador.’;
}
?>
-
Hola, seguro no estoy pero lo primero que haría yo es comprobar que las rutas sean correctas y que te carga las clases. Para ello puedes colocar un fichero en la misma ruta que las clases y ver si tienes acceso... Lo segundo sería ver si la versión de PHP que estás usando puede ser la que genere el problema.
-
Gracias Javi por tu comentario.
He probado como dices y no llego a la carpeta donde he dejado las clases, por lo que las he sacado de ahi y las he puesto junto al php, evidentemente modificando la ruta.
Vuelvo a probar y la misma, que error de syntaxis.
La version de PHP que tiene el host es 5.6.
La clase "class.php.phpmailer.php" me dice esto:
* PHPMailer - PHP email transport class
* NOTE: Requires PHP version 5 or later
La clase "class.smtp.php" me dice esto:
* PHPMailer - PHP SMTP email transport class
* NOTE: Designed for use with PHP version 5 and up
Por lo que entiendo que esta todo OK, no?, per aun asi no hay manera siempre el error de syntax...
El tema es que necesito esto ya que he usado mail() pero no me deja enviar mas de 5 correos, no se si sera hostiner que lo tiene "capado" o que no se puede enviar mas por ese metodo, y Yo necesito enviar 10 correos en copia.
Un saludo y gracias de nuevo.
-
Por lo que veo no hay solución o no hay nadie que lo sepa.
No tengo forma de enviar un correo a varios destinatarios, puede que sea por Hostinger gratuito que me lo limite, pero es que ahora ya no puedo ni enviar a 2, solo me deja enviar a un destinatario.
No se que hacer...