Ver Mensaje Individual
  #18 (permalink)  
Antiguo 17/12/2008, 12:30
Avatar de el_cesar
el_cesar
 
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 23 años
Puntos: 20
Respuesta: Enviar PDF por correo

Perfecto corrio muy bien, gracias a todos, aqui dejo todo el script por si le puede servir a alguien

Código:
<?php
//conecta a la base de datos
$mysql_id = mysql_connect('localhost', 'usrname', 'pss');
mysql_select_db('bd', $mysql_id);

//trae las clases fpdf y phpmailer
require ('fpdf153/fpdf.php');
require ('includes/class.phpmailer.php');


//recibe variables del formulario
$placa=$_GET['placa'];
$empresa=$_GET['empresa'];

//crea el pdf
$pdf=new FPDF('P','cm','letter');
$pdf->AddPage();
$pdf->SetFont('Arial','',12);


//Consultas que se utilizan 
$sql="SELECT * FROM viaje WHERE vehiculo = '".$placa."'";
$sql2="SELECT * FROM contratante WHERE cedula_nit = '".$empresa."'";
$sql3="SELECT * FROM vehiculo WHERE placa = '".$placa."'";

//Ejecuta las consultas
$resultado = mysql_query($sql) or die( mysql_error());
$resultado2 = mysql_query($sql2) or die( mysql_error());
$resultado3 = mysql_query($sql3) or die ( mysql_error());

while( $row = mysql_fetch_assoc($resultado)) {
       $row2 = mysql_fetch_assoc($resultado2);
       $row3 = mysql_fetch_assoc($resultado3);
  
//cambia formato a la fecha para poder presentarla como dd-mm-aa
$fecha_salida = strtotime($row['fecha_salida']);
$feha_regreso = strtotime($row['fecha_regreso']);
 


//arma el pdf ubicando cada campo traido de la base de datos en una posicion especifica en la hoja SetY lo ubica verticalmente y Setx lo hace horizontalmente
$pdf->SetY(7.5); 
$pdf->SetX(6);
$pdf->Cell(0,0,$row['origen']);
$pdf->SetY(8.1); 
$pdf->SetX(6);
$pdf->Cell(0,0,$row['destino']);
$pdf->SetY(8.7);
$pdf->SetX(6.8);
$pdf->Cell(0,0,date("d-m-Y", $fecha_salida));
$pdf->SetY(8.7);
$pdf->SetX(15.5);
$pdf->Cell(0,0,date("d-m-Y", $fecha_regreso));
$pdf->SetY(9.3);
$pdf->SetX(6.8);
$pdf->Cell(0,0,$row2['Empresa']);
$pdf->SetY(10.3);
$pdf->SetX(3);
$pdf->Cell(0,0,$row['objeto']);
$pdf->Sety(11.3);
$pdf->SetX(3);
$pdf->Cell(0,0,$row['observaciones']);
$pdf->Sety(12.7);
$pdf->SetX(4.7);
$pdf->Cell(0,0,$row3['placa']);
$pdf->Sety(13.1);
$pdf->SetX(4.7);
$pdf->Cell(0,0,$row3['modelo']);
$pdf->Sety(13.4);
$pdf->SetX(5.5);
$pdf->Cell(0,0,$row3['tarjeta_operacion']);
$pdf->Sety(12.7);
$pdf->SetX(12.3);
$pdf->Cell(0,0,$row3['marca']);
$pdf->Sety(13.1);
$pdf->SetX(12.8);
$pdf->Cell(0,0,$row3['no_interno']);
$pdf->Sety(13.4);
$pdf->SetX(12.6);
$pdf->Cell(0,0,$row3['vencimiento_t_o']);

//Se crea el formato de correo a Enviar
$mail=new PHPMailer();
$mail->Mailer="smtp";
$mail->Helo = "www.dominio.com"; //Muy importante para que llegue a hotmail y otros
$mail->SMTPAuth=true;
$mail->Host="smtp.tuserver.com";
$mail->Port=25; //depende de lo que te indique tu ISP. El default es 25, pero nuestro ISP lo tiene puesto al 26
$mail->Username="[email protected]";
$mail->Password="******";
$mail->From="[email protected]";
$mail->FromName="El Nombre del Remitente";
$mail->Timeout=60;
$mail->IsHTML(true);

//Enviamos el correo
$mail->AddAddress('[email protected]'); //Puede ser Hotmail
$mail->Subject='tu asunto';

//Creamos una salida para ver el documento en el navegador
$pdf->Output('extracto /' .$row3['no_interno'].'/'.date("d-m-Y", $fecha_salida).'','I');

//Creamos el documento como String para poder enviarlo como archivo adjunto
$doc=$pdf->Output('extracto /' .$row3['no_interno'].'/'.date("d-m-Y", $fecha_salida).'','S');
$mail->AddStringAttachment($doc, 'extracto /' .$row3['no_interno'].'/'.date("d-m-Y", $fecha_salida).'', 'base64', 'application/pdf');
$mail->Send();

}



?>
__________________
Say no more.......