2010-12-03 1 views

답변

17

두 가지 옵션이 있습니다. 첫 번째는 링크하는 것입니다. <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; 

그리고는 해당 스크립트 대신 워드 문서에 연결합니다.

그래도 작동하지 않을 수 있습니다. content-disposition 헤더는 단지 힌트 일 뿐이며, 모든 브라우저는이를 어쨌든 첨부 파일로 처리하도록 선택할 수 있습니다.

또한 .doc은 정확하게 휴대 할 수 없습니다. 기본적으로 Word를 제대로 사용해야합니다 (Open Office와 몇 가지 다른 오픈 소스 응용 프로그램은 괜찮은 일을하지만 꽤 많이 있습니다). 브라우저는 Word를 플러그인으로 열어 지원해야합니다.

.doc 파일 형식 요구 사항이 돌로 설정되지 않은 경우 PDF가 더 나은 선택입니다 (변환은 대개 WordPress의 CutePDF와 같은 PDF 프린터에서 인쇄하는 것처럼 간단합니다) 문서를 HTML로 변환 할 수도 있습니다 (마일리지는 다를 수 있음).

+1

오픈 오피스는'.doc' 파일을 표시 할 때 100 % 정확한 것은 아니지만 MS-Word도 마찬가지입니다. 나는 둘 다 동일한 실패율을 보였다. 문제는'.doc '형식입니다. –

6
<a href="foo.doc">…</a> 

Office 문서가 설치된 경우 브라우저가 있어야합니다. 필자는 Microsoft Office가 기본적으로 최소한 Internet Explorer 용으로 Microsoft Office를 설치할 것이라고 생각합니다.

플러그인없이 작업하려면 문서를 다른 형식으로 변환해야합니다. 호환성을 최대화하려면 HTML을 사용해야합니다. 이는 특히 복잡한 문서 (또는 단지 이미지가 포함 된 문서)의 경우 사소한 작업이 아닙니다.

3

.doc 파일에 온라인으로 액세스 할 수 있으면 Office Web Viewer 서비스를 사용해보십시오.

문서가 인트라넷에 저장되어있는 경우 Microsoft Office Web Apps 서버를 사용할 수 있습니다. 그것은 사용자가 브라우저를 통해 Word, PowerPoint, Excel 문서를 볼 수있게합니다.

1
$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
//Edit 
$header="Content-Disposition: attachment; filename=$file_name.doc;"; // Send File Name 
+4

피드백과 제안 된 솔루션에 감사드립니다. 이 OP를 사용하는 방법과 그 기능에 대해 OP가 정교하게 고맙게 생각할 것이라고 확신합니다. –

+2

이것은 질문에 대답하지 않습니다. 파일을 다운로드합니다 (다른 헤더 매개 변수 포함) – Dadani

3

당신은 무료 대신으로 구글 문서 도구를 사용하고 신뢰할 수 당신은 iframe 대응에 파일 경로를 지정할 수 있습니다.

iframe1.Attributes.Add ("Src", "http://docs.google.com/gview?url=http://YOUR_FILE_PATH & embedded = true");

+0

아주 좋습니다! 나는 이것을 몰랐다. –

+0

http://view.officeapps.live.com/op/view.aspx?src=<- Microsoft 버전 –

관련 문제