eWikiでページ名に"attachment"を含むとページがダウンロードされてしまう

Re: eWikiでページ名に"attachment"を含むとページがダウンロードされてしまう

- Tatsuya Shirai の投稿
返信数: 0

別解として

urlencode($uu)



urlencode(egegi_replace("attachment", "%61ttachment", $uu))

にするとか。

こちらも検証してみました.IE8限定ですので,逆にFirefoxなどで副作用が出るかも知れませんが,それはまた後日に.egegi->eregiとしまして^^).なるほど,素晴らしい.うまく画面が表示されました.ただ,これですと%61がそのままファイル名に含まれてしまいます(filenameパラメータが正しく渡されたかどうかを確認するために,inlineを意図的にattachmentに変更して確認).

順番を入れ替えて,

eregi_replace("attachment", "%61ttachment", urlencode($uu))

で,一応,OKでした(日本語は確認していません).なお,このままですと常に小文字のattachmentに置換されてしまうので,大文字小文字を無視してattachmentが含まれたら頭一文字を%61に変える,といったcallback関数?を使うように改良すればIEの尻拭いはできそうですね!

 なお,MSDNで得た情報にしたがって確認したところ,inlineにfilenameのパラメータをつけることは,FirefoxとSafariにおいては意味がありそうです.出力されたWikiのページをFirefox等ではマウスの右クリックでファイルに保存することができます.その際に,filenameで指定されたファイル名が採用されます.IEですと,そのページ全体を保存することはできても,Wikiのページ部分のみを保存することはできませんでした(右クリックに選択肢が現れない).ですので,「IEの場合はこのヘッダーを送ってあげない」が現状ではバランスの良い改善だと思います.ただ,挙動に興味はありますので時間ができ次第,実験は続けます.