Kazuhiko
kazuh****@fdiar*****
2003年 4月 22日 (火) 19:51:01 JST
かずひこです。 At Tue, 22 Apr 2003 13:18:53 +0900, Kazuhiko wrote: > mime_type = file_name.unescape.downcase.rindex(/\.(.+)/) || '' > > print "Content-Type: #{mime_type}\n" > > とありますが、これだと mime_type の値は、拡張子を除いた部分の長さを返し > てしまうので、Content-Type: 8 とかになってしまいました。 こんな感じでよさそうです (むらけんさんに教えてもらいました)。 --- misc/plugin/attach/attach.rb 2003-04-21 23:39:32.000000000 +0900 +++ misc/plugin/attach/attach.rb 2003-04-22 19:12:20.000000000 +0900 @@ -69,7 +69,8 @@ page = (params['p'][0] || '') file_name = (params['file_name'][0] || '') attach_file = "#{@cache_path}/attach/#{page.escape}/#{file_name.escape}" - mime_type = file_name.unescape.downcase.rindex(/\.(.+)/) || '' + extname = /\.([^.]+)$/.match(file_name.unescape.downcase).to_a[1] + mime_type = mime_types[extname] print "Content-Type: #{mime_type}\n" print %Q!Content-Disposition: filename="#{file_name.to_sjis}"\n\n! # extname の値は、 # aaa.bbb.jpg -> jpg # aaa -> nil # となります。 -- かずひこ <http://www.fdiary.net/~kazuhiko/diary/> ★シャア「名字が付いてない」 ☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」