Jump to content

Envio de correo en PHP


Recommended Posts

Hola, estoy utilizando la instruccion PHPMailer para enviar informacion a un correo con archivo adjunto, me funciona bien, pero hay un detalle. solamente me adjunta archivos de imagen, como puedo hacer para que me adjunte todo tipo de archivo, envio el codigo.

 

enviar.php

 

<?php

$nombre1 = $_POST['nombre'];

$fono = $_POST['fono'];

$empresa = $_POST['empresa'];

$email = $_POST['email'];

$tipo = $_POST['tipo'];

$observaciones = $_POST['observaciones'];

$impresion = $_POST['impresion'];

$digitalizacion = $_POST['digitalizacion'];

$anillado = $_POST['anillado'];

$velobinder = $_POST['velobinder'];

$transparencias = $_POST['transparencias'];

$termolaminado = $_POST['termolaminado'];

require("class.phpmailer.php");

$mail = new PHPMailer();

$mail->IsMail(); // decimos que usaremos la función mail()

$mail->From = $email; //mail de quien envía

$mail->FromName = $nombre1; //nombre de quien envía

$mail->AddAddress("[email protected]"); //mail de quien recibe

$mail->Subject = "Formulario Empresas";

$cuerpo = "Formulario Empresas\n";

$cuerpo .= "Nombre: " . $nombre1. "\r\n";

$cuerpo .= "Fono: " . $fono. "\r\n";

$cuerpo .= "Empresa: " . $empresa. "\r\n";

$cuerpo .= "E-mail: " . $email. "\r\n";

$cuerpo .= "Tipo de Trabajo: " . $tipo. "\r\n";

$cuerpo .= "Observaciones: " . $observaciones. "\r\n";

$cuerpo .= "Impresion Laser: " . $impresion. "\r\n";

$cuerpo .= "Digitalizacion: " . $digitalizacion. "\r\n";

$cuerpo .= "Anillado: " . $anillado. "\r\n";

$cuerpo .= "Velobinder: " . $velobinder. "\r\n";

$cuerpo .= "Transparencias: " . $transparencias. "\r\n";

$cuerpo .= "Termolaminado: " . $termolaminado. "\r\n";

$mail->Body = $cuerpo;

$mail->WordWrap = 500;

$path = $_FILES['archivo']['tmp_name'];

$nombre = $_FILES['archivo']['name'];

$tipo_archivo = $_FILES['archivo']['type'];

$tamano_archivo = $_FILES['archivo']['size'];

$mail->AddAttachment($path,$nombre,"base64",$tipo_archivo);

if(!$mail->Send()){

echo "Mailer Error: " . $mail->ErrorInfo;

}else{

echo "Se envio el mensaje...";

}

?>

 

 

Link to comment
Share on other sites

  • 2 weeks later...

Hola, estoy utilizando la instruccion PHPMailer para enviar informacion a un correo con archivo adjunto, me funciona bien, pero hay un detalle. solamente me adjunta archivos de imagen, como puedo hacer para que me adjunte todo tipo de archivo, envio el codigo.

 

enviar.php

 

<?php

$nombre1 = $_POST['nombre'];

$fono = $_POST['fono'];

$empresa = $_POST['empresa'];

$email = $_POST['email'];

$tipo = $_POST['tipo'];

$observaciones = $_POST['observaciones'];

$impresion = $_POST['impresion'];

$digitalizacion = $_POST['digitalizacion'];

$anillado = $_POST['anillado'];

$velobinder = $_POST['velobinder'];

$transparencias = $_POST['transparencias'];

$termolaminado = $_POST['termolaminado'];

require("class.phpmailer.php");

$mail = new PHPMailer();

$mail->IsMail(); // decimos que usaremos la función mail()

$mail->From = $email; //mail de quien envía

$mail->FromName = $nombre1; //nombre de quien envía

$mail->AddAddress("[email protected]"); //mail de quien recibe

$mail->Subject = "Formulario Empresas";

$cuerpo = "Formulario Empresas\n";

$cuerpo .= "Nombre: " . $nombre1. "\r\n";

$cuerpo .= "Fono: " . $fono. "\r\n";

$cuerpo .= "Empresa: " . $empresa. "\r\n";

$cuerpo .= "E-mail: " . $email. "\r\n";

$cuerpo .= "Tipo de Trabajo: " . $tipo. "\r\n";

$cuerpo .= "Observaciones: " . $observaciones. "\r\n";

$cuerpo .= "Impresion Laser: " . $impresion. "\r\n";

$cuerpo .= "Digitalizacion: " . $digitalizacion. "\r\n";

$cuerpo .= "Anillado: " . $anillado. "\r\n";

$cuerpo .= "Velobinder: " . $velobinder. "\r\n";

$cuerpo .= "Transparencias: " . $transparencias. "\r\n";

$cuerpo .= "Termolaminado: " . $termolaminado. "\r\n";

$mail->Body = $cuerpo;

$mail->WordWrap = 500;

$path = $_FILES['archivo']['tmp_name'];

$nombre = $_FILES['archivo']['name'];

$tipo_archivo = $_FILES['archivo']['type'];

$tamano_archivo = $_FILES['archivo']['size'];

$mail->AddAttachment($path,$nombre,"base64",$tipo_archivo);

if(!$mail->Send()){

echo "Mailer Error: " . $mail->ErrorInfo;

}else{

echo "Se envio el mensaje...";

}

?>

 

 

tienes que ir a este metodo AddAttachment($path,$nombre,"base64",$tipo_archivo);

 

y ver la validacion que le hace a la variable $tipo_archivo

 

por que en este codigo no hace nada de funcionadida mucha

 

 

:banana:

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...