2012-03-05 13 views
0

私はPHPを使用してExcelファイルを作成しています。 PHPはファイルを作成しますが、ファイルのアクセス権は「読み取り専用」に設定されています。ユーザーがファイルを編集できるようにする権限が必要です。私はサーバー上に新しいファイルを作成していません(私は、他のすべてが失敗した場合にそのオプションを予約したいと思います)。出力をブラウザにフラッシュする権限を変更するにはどうすればよいですか?

header("Pragma: public"); 
header("Expires: 0"); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
header("Content-Type: application/force-download"); 
header("Content-Type: application/octet-stream"); 
header("Content-Type: application/download");; 
header("Content-Disposition: attachment;filename=$filename ");  
header("Content-Transfer-Encoding: binary "); 

$out = ob_get_clean(); 
echo $out; 
xlsEOF(); 
exit(); 
+4

コンテンツタイプヘッダーは3つですが、1つしか持てません(Excelドキュメントの場合は 'application/vnd.ms-excel')。 – Quentin

+0

よく知っているクエンティン、ありがとう。 – Conor

答えて

1

これが本当の問題ではありません。

はここに関連するコードです。

Linuxでは、ファイルをダウンロードするユーザーにはファイルの編集権限がありますが、他のユーザーは「読み取り専用」権限(添付の画像を参照)のみを持っています。

私は間違って、Windowsユーザーにも「読み取り専用」属性が表示されると仮定していたため、「問題」は誤った前提の結果です。 the red asterisks on the image show the file permissions. I was incorrectly assuming the 'read only' attribute would be associated files in Windows as well

+0

さて、これはクライアント側の通常のアクセス許可です。 PHPやHTTPとは関係ありません。 –

関連する問題