Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Descargar archivo word phpword

Estas en el tema de Descargar archivo word phpword en el foro de PHP en Foros del Web. Saludos. Estoy utilizando una libreria llamada PHPWord, hago una consulta a la BD(MySQL), y creo un archivo .docx, el detalle esta cuando quiero poner el ...
  #1 (permalink)  
Antiguo 09/09/2014, 16:06
Avatar de omar_gutierrez  
Fecha de Ingreso: febrero-2011
Mensajes: 144
Antigüedad: 13 años, 2 meses
Puntos: 2
Pregunta Descargar archivo word phpword

Saludos.

Estoy utilizando una libreria llamada PHPWord, hago una consulta a la BD(MySQL), y creo un archivo .docx, el detalle esta cuando quiero poner el cuerpo del archivo.

Para introducir el texto principal utilizo CKEditor, se guarda en la BD todo normal, hago el query y pongo la info en el archivo, lo guardo y se muestra asi:

Cita:
<p>En calma se desarrolla la primera parte de las elecciones internas del Partido de la Revoluci&oacute;n Democr&aacute;tica (PRD), en la ciudad se instalaron 16 mesas receptoras en domicilios particulares que previamente fueron propuestas por representantes de este partido, dijo Ram&oacute;n Salazar, presidente de la III Junta Distrital, la elecci&oacute;n concluir&aacute; a las 6 de la tarde y el conteo preliminar de resultados se har&aacute; en las mesas receptoras y se enviar&aacute; a M&eacute;xico donde dar&aacute;n a conocer los resultados globales, el pr&oacute;ximo mi&eacute;rcoles se har&aacute; una concentraci&oacute;n de datos y en caso de haber discrepancias se abrir&aacute;n los paquetes electorales. Jose-Elecci&oacute;n PRD.</p> <p>Los cuerpos policiacos son incapaces de ofrecer resultados a los juarenses y eso se refleja en la impunidad con que se tratan algunos casos, incluido el del suegro del alcalde Enrique Serrano, a quien ni siquiera se le cobr&oacute; una multa a pesar de que fue llevado a barandilla por los agentes municipales, se&ntilde;al&oacute; Catalina Castillo, directora de la Organizaci&oacute;n Popular Independiente. No se utiliza la misma vara para medir a los familiares de los funcionarios y al resto de los ciudadanos, dijo Laurencio Barraza, secretario ejecutivo del Consejo Ciudadano. Jose-Detenci&oacute;n.</p> <p>Los pocos espacios para la recreaci&oacute;n que existen en la ciudad y el hecho de que la comunidad se vuelva m&aacute;s permisiva se ve reflejado en hechos como el ocurrido en el estadio de beisbol donde pudo ocurrir una tragedia mayor por falta de vigilancia, dijeron representantes de Organizaciones Civiles.</p> <p>Personal del IMSS participar&aacute; hoy en un taller sobre derechos humanos que ser&aacute; impartido por el &aacute;rea de capacitaci&oacute;n de la CNDH en el auditorio del hospital n&uacute;mero 6 o Seguro Viejo. Jose-Curso.</p>
Se trae la informacion con html y los caracteres especiales sin convertir, he buscado pero no encuentro como eliminar los parrafos (<p>) y convertir los caracteres especiales (acentos, ñ, etc)
  #2 (permalink)  
Antiguo 09/09/2014, 16:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Descargar archivo word phpword

Para eliminar los tags de HTML debes usar strip_tags(), y para los caracteres html_entity_decode(), consulta el manual.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/09/2014, 16:29
Avatar de omar_gutierrez  
Fecha de Ingreso: febrero-2011
Mensajes: 144
Antigüedad: 13 años, 2 meses
Puntos: 2
Respuesta: Descargar archivo word phpword

Gracias por responder pateketrueke, la strip_tags no la encontraba, como eliminar los html tags.

La html_entity_decode ya lo habia intentado, pero sin tener buenos resultados, no se si tengo que especificar algun header para el charset, aunque este archivo lo unico que hace es el query, crear el archivo .docx, y descargarlo.

Código PHP:
<?php
include 'db.php';
$query $mysqli->query("SELECT * FROM notas WHERE id = '".$_GET['id']."'");
$res $query->fetch_array(MYSQLI_ASSOC);

require_once 
'../PHPWord.php';

// New Word Document
$PHPWord = new PHPWord();

// New portrait section
$section $PHPWord->createSection();

// Add text elements
$section->addText($res['cabeza'], array('name'=>'Verdana'));
$section->addTextBreak(1);

$section->addText(strip_tags(html_entity_decode($res['nota'])), null'pStyle');

// Save File
$objWriter PHPWord_IOFactory::createWriter($PHPWord'Word2007');
$objWriter->save('Text.docx');


header('Content-Description: File Transfer');
header('Content-type: application/force-download');
header('Content-Disposition: attachment; filename='.basename('Text.docx'));
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize('Text.docx'));
readfile('Text.docx');
unlink('Text.docx');
?>
  #4 (permalink)  
Antiguo 09/09/2014, 16:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Descargar archivo word phpword

Tendrás que consultar en el manual acerca de html_entity_decode(), pues probablemente sea un tema de que no la estás usando correctamente, te toca revisar los argumentos, etc.

Lo del header() no tiene relación en lo absoluto, pues el tema es la creación del documento y no la descarga del mismo, lo cual está bien.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 09/09/2014, 16:43
Avatar de omar_gutierrez  
Fecha de Ingreso: febrero-2011
Mensajes: 144
Antigüedad: 13 años, 2 meses
Puntos: 2
Respuesta: Descargar archivo word phpword

Orales gracias, el problema es que a veces no se ni como buscar la info, hice esto:

Código PHP:
$section->addText(strip_tags(html_entity_decode($res['nota'],ENT_QUOTES,"ISO-8859-1")), null'pStyle'); 

Etiquetas: conversor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:55.