Как я могу просмотреть / открыть текстовый документ в моем браузере, используя PHP или HTML - PullRequest
13 голосов
/ 03 декабря 2010

Как я могу открыть и просмотреть расширение .doc в моем браузере?Файл находится на моем сервере.

Ответы [ 6 ]

18 голосов
/ 03 декабря 2010

Два варианта: во-первых, просто ссылку на него, например, <a href="MyWordDocument.doc">My Word Document</a>, второе - использовать iframe и указывать его на документ. Однако, чтобы это работало, большинство браузеров требует, чтобы сервер отправлял заголовок Content-disposition: inline с документом. Если вы не можете настроить свой веб-сервер для этого, вы можете обернуть документ в немного php:

<?php
header('Content-disposition: inline');
header('Content-type: application/msword'); // not sure if this is the correct MIME type
readfile('MyWordDocument.doc');
exit;

А затем ссылка на этот скрипт вместо вашего Word документа.

Это не гарантированно сработает; заголовок размещения контента - это всего лишь подсказка, и любой браузер может все равно рассматривать его как вложение.

Также обратите внимание, что .doc не совсем переносимый; в общем, вам нужно, чтобы Word правильно отображал его (Open Office и несколько других приложений с открытым исходным кодом делают достойную работу, но пока не совсем готовы), и браузер должен поддерживать открытие Word в качестве плагина.

Если требование формата файла .doc не задано в камне, лучшим выбором будет PDF (преобразование обычно так же просто, как печать на PDF-принтере, скажем, CutePDF, из Word), или, может быть, вы может даже конвертировать документ в HTML (хотя пробег может отличаться).

6 голосов
/ 03 декабря 2010
<a href="foo.doc">…</a>

Вам понадобится браузер с установленным плагином для документов Office. Я полагаю, что по умолчанию Microsoft Office установит его как минимум для Internet Explorer.

Если вы хотите работать без плагина, то вам нужно будет конвертировать документ в другой формат - HTML для максимальной совместимости. Это не тривиальная операция, особенно для сложных документов (или даже тех, которые просто содержат изображения).

4 голосов
/ 19 февраля 2014

Если ваш файл .doc доступен онлайн, вы можете попробовать Office Web Viewer service.

Если ваши документы хранятся в интрасети, вы можете использовать Microsoft Office Web Apps Сервер.Он позволяет пользователям просматривать документы Word, PowerPoint, Excel через браузер.

3 голосов
/ 16 февраля 2016

Вы можете использовать Google Docs вместо этого, поскольку это бесплатно и надежно. Вы можете назначить свой путь к файлу для iframe.

например, iframe1.Attributes.Add ("Src", "http://docs.google.com/gview?url=http://YOUR_FILE_PATH&embedded=true");

1 голос
/ 15 августа 2014
$file = "$file_name.doc";
$len = filesize($file); // Calculate File Size
ob_clean();
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public"); 
header("Content-Description: File Transfer");
header("Content-Type:application/zip"); // Send type of file
$header="Content-Disposition: attachment; filename=$patient_name.zip;"; // Send File Name
header($header );
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".$len); // Send File Size
@readfile($file);
0 голосов
/ 15 августа 2014
//Edit
$header="Content-Disposition: attachment; filename=$file_name.doc;"; // Send File Name
...