27/06/2013, 08:59
|
| | Fecha de Ingreso: julio-2011
Mensajes: 6
Antigüedad: 13 años, 6 meses Puntos: 0 | |
Respuesta: Ajax + codeigniter + tcpdf Hola y gracias de nuevo, ya habia probado lo que me comentaste y tampoco ha solucionado el problema, a continuación te muestro todo lo que estoy haciendo:
en la vista
Código:
<img src="images/pdf.png" title="Generar Reporte en PDF" onclick="cargarReporte('reporte','<?=$titulo?>','<?=$fil?>','_vehiculos/c_vehiculos/reporte');" />
la funcion javascript :
Código:
function cargarReporte(tabla,titulo,filtro,url)
{
tb=document.getElementById(tabla);
rows=tb.rows.length;
cols=tb.rows[1].cells.length;
data=new Array();
headers=new Array();
c=0;
for (i=0;i<cols;i++)//columnas de la tabla
{
if(document.getElementById('check'+i).checked)
{
texto=tb.rows[1].cells[i].innerHTML;
headers[c]=texto.substr(texto.lastIndexOf('>')+1);
c++;
}
}
document.getElementById('headers').value=headers;
datos="filtro="+filtro+
'&headers='+headers+'&titulo='+titulo;
/*document.getElementById('form_rep').src=url;
document.getElementById('form_rep').submit();*/
var a= new Ajax();
a.open("POST",url,false);
a.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
a.send(datos);
window.open(a.responseText,"Reporte","","_blank");
}
y en el controlador:
Código:
function reporte()
{
$archivo="images/example.pdf";
//Datos de consulta
$titulo=$this->input->post("titulo");
$cols=$this->input->post("headers");
$headers=explode(',',$cols);
$filtro=$this->input->post("filtro");
$lista=$this->m_vehiculos->cons($filtro);
$this->load->library('pdf');
//Datos del documento
$this->pdf->SetCreator(PDF_CREATOR);
$this->pdf->SetAuthor('CDA Motocesar');
$this->pdf->SetTitle($titulo);
$this->pdf->SetSubject($titulo);
//Datos de encabezado
$this->pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 001', PDF_HEADER_STRING, array(0,64,255), array(0,64,128));
$this->pdf->setFooterData(array(0,64,0), array(0,64,128));
//Cortar la pagina
$this->pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
//Añadir la página
$this->pdf->AddPage();
//Codigo HTML
$html="<p>hola mundo</p>";
$this->pdf->writeHTML($html, true, 0, true, 0);
$this->pdf->Output($archivo, 'F');
echo $archivo;
//return "images*ci_guia_usuario.pdf";
}
la url que abre el window.open es:
Código:
http://127.0.0.1/misitio/%3Cdiv%20style=%22border:1px%20solid%20#990000;padding-left:20px;margin:0%200%2010px%200;%22%3E%3Ch4%3EA%20PHP%20Error%20was%20encountered%3C/h4%3E%3Cp%3ESeverity:%20Warning%3C/p%3E%3Cp%3EMessage:%20%20fopen%28images/example.pdf%29:%20failed%20to%20open%20stream:%20Permission%20denied%3C/p%3E%3Cp%3EFilename:%20tcpdf/tcpdf.php%3C/p%3E%3Cp%3ELine%20Number:%207640%3C/p%3E%3C/div%3E%3Cstrong%3ETCPDF%20ERROR:%20%3C/strong%3EUnable%20to%20create%20output%20file:%20images/example.pdf
es decir que el output de tcpdf genera el error y luego si imprime la variable de la ruta.
Ayuda porque ya no se que mas hacer |