Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] application/vnd.ms-word | generowanie plików doc
Forum PHP.pl > Forum > PHP
MadManix
Cześć, poniższy kod generuje plik doc zawierający właśnie ten kod w postaci tekstu, ze wszystkimi znacznikami html.
Czy mógłby ktoś podpowiedzieć czego brakuje żeby generował się plik sformatowany? Żeby zamiast "<h1>Header</h1>" drukowało się: Header

  1. <?php
  2. header("Content-type: application/vnd.ms-word");
  3. header("Content-Disposition: attachment; Filename=SaveAsWordDoc.doc");
  4. ?>
  5. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  6. <html xmlns="http://www.w3.org/1999/xhtml">
  7. <head>
  8. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">
  9. <title>Saves as a Word Doc</title>
  10. </head>
  11. <body>
  12. <h1>Header</h1>
  13. This text can be seen in word
  14. <ul>
  15. <li>List 1</li>
  16. <li>List 2</li>
  17. </ul>
  18. </body>
  19. </html>
trueblue
A co chcesz osiągnąć?
Samo ustawienie mime type nie spowoduje, że plik automatycznie stanie się plikiem word'owskim. Pierwszą linię możesz pominąć i efekt będzie ten sam.
To co wygenerowałeś otworzy się w edytorze jako plik sformatowany tylko i wyłącznie jeśli tenże program łaskawie będzie chciał go w poprawny sposób zinterpretować (uznać, że to jednak HTML pomimo rozszerzenia .doc). Jeśli jednak tak się stanie, to powinieneś otrzymać plik sformatowany, ale przy takiej strukturze nigdy nie będzie plikiem .doc.

https://msdn.microsoft.com/en-us/library/of...office.14).aspx
sabat24
A jeśli chcesz generować dokumenty pod Worda, to pod czyste PHP nic lepszego do tej pory nie znalazłem: https://github.com/PHPOffice/PHPWord
MadManix
Ok, dzięki za odpowiedzi. Generalnie to chciałbym generować plik doc, w którym znajdowałaby się tabelka. Czyli to co w html wygląda tak:
  1. <tr><td></td></tr>
  2. <tr><td></td></tr>


żeby pokazywało się jak tabelka, taka jaką można tworzyć w Wordzie.

Poczytam linki, które podaliście.
Pzdr
sabat24
Przy tabelkach to różnie bywa - czasami trzeba pisać własny konwerter albo generować tabele bezpośrednio, ale generalnie z HTMLem sobie jakoś radzi. Tu masz przykład:
https://github.com/PHPOffice/PHPWord/blob/m...ple_26_Html.php
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.