attach.inc.php のファイルアップロードでファイル名にpathが含まれていてもそのままファイル名として保存してしまう †
メッセージ †CLIEのNetFrontからメモリースティックに保存した写真をアップロードしたら、ファイルのフルパスを「ファイル名」としてアップするようで、添付されたファイル名が /MEMORYSTICK/DCIM/DSC00100.JPG となってしまいます。 ファイルが添付されているページの下の方に自動で追加されるリンクはちゃんと添付ファイルが参照されています。 attach.inc.phpを次のようにしてみました。 --- bwiki-new/plugin/attach.inc.php Sun Jul 6 11:58:46 2003 +++ bwiki/plugin/attach.inc.php Sun Jul 6 16:00:41 2003 @@ -422,6 +422,10 @@ function AttachFile($page,$file,$age=0) { + preg_match('/^(.*\/|)([^\/]+)$/',$file,$filefilename); + if($filefilename[2] != '') { + $file = $filefilename[2]; + } $this->page = $page; $this->file = $file; $this->age = is_numeric($age) ? $age : 0; @@ -669,6 +673,10 @@ } function add($file,$age) { + preg_match('/^(.*\/|)([^\/]+)$/',$file,$filefilename); + if($filefilename[2] != '') { + $file = $filefilename[2]; + } $this->files[$file][$age] = &new AttachFile($this->page,$file,$age); } // ファイル一覧を取得 こんな変更でよいのでしょうか?*1
|