今週の差分その1

category-icon

 こんにちは。差分ファイル減るどころか増えています…。主な修正は以下の感じ。

  • カテゴリー周りの不具合を修正。カテゴリー削除に伴う挙動とか。
  • バックアップのアーカイブ作成スクリプトの見直し。なるべく処理を軽くするように。
  • 画像アップロードに関する諸々の修正

です。前回のエントリーも参考になるかと思いますが、画像のアップロードおよびそれに続く一連の処理で、従来だと、画像サイズが大きすぎるとメモリを使い果たして、処理が止まってしまうこともあったと思いますが、それへの対応です。ついでに、環境設定で、アップできる画像の最大サイズを指定する箇所がありますが、ここの単位がKBなのをMBに変えました。時代の流れに合わせないとですね。サーバーによりけりですが、アップロード出来るファイルサイズは、だいたい8MBから15MBぐらいはあると思います。お使いのサーバーでの具体的な値を知りたければ、index.phpの途中辺り(34行目あたり)に、

if(ADMIN) P('Max size is: '.ini_get("upload_max_filesize"));

と書いて、ログインすると表示されます。この修正により、設定ファイルのini.inc.phpの書き換えが必要になります。2カ所ですが、ひとつは29行目、

define('MAX_FSIZE','8');   /* アップする画像のファイルサイズ上限。MBで指定。*/

で、これに伴い、95行目の

$maxsize = 1024 * 1024 * MAX_FSIZE;        // 上限サイズをMBからバイトに直しておく

です。お手数をおかけしますが、よろしくお願いします。参考としてini.inc.phpも添付しておきます。JavaScript関連も、色々修正が入ってます。デバグの消し忘れとか、エディタ関連とか。

 とりあえず取り急ぎ 

添付ファイル: DIFF080421.zipattachedIcon 

— posted by martin at 06:18 pm   commentComment [12]  pingTrackBack [0]

 

アップロード出来る画像のサイズ

category-icon

 3MB超の画像をアップしてみます。()元の画像サイズが大きいので、回線が貧弱だと、クリックして元の画像を表示させるのに時間がかかります。
Tamuro1
福岡の前原駅の近くにある「たむろ」。出国する前に先生方と。美味しかったなぁ。

 アップロードするのに、こちらの回線では2分弱かかりました。

 昨年の9月末に、アップできる画像の上限を可変的に扱うスクリプトを書いてたはずでしたが、これがローカルのテスト環境でのutils_admin.phpや配布版にも反映されてませんで。ローカルの別のテスト環境のディレクトリにあるutils_admin.phpにその記述を見つけました。具体的には、サムネイル画像を生成するcreate_thumbnail()関数内にその記述がありますが、動的に、アップされた画像ファイル処理に必要なメモリを取得して、一時的にサーバーのメモリ容量を増やす方法です。PHP.NETのユーザーメモにあったものです。たった数行の記述を加えるだけですが、これでかなりのサイズの画像ファイルをアップロードすることが出来ます。デジカメが高解像度になって、写真1枚のファイルサイズが1MBを超えるものが当たり前になってるので、ブログの方もこれに合わせないとですね。


Tamuro2
同じくたむろにて。これはマグロの頭だったかな。とにかくでかかった。左は自分の手。大きい方なんだけど。更にでかい。

Tamuro3
個人的には、にぎりは「しゃり」が命。ねたがいくら優れていても土台が旨くないと台無しになってしまう。

 ちなみに加えたコードは以下のようなやつです。

 $fudgeFactor = 1.7;
 $memoryNeeded = round(($info[0] * $info[1] * $info['bits'] * $info['channels'] / 8 + Pow(2, 16)) * $fudgeFactor);
 $memoryLimit = 8 * 1048576;
 if(memory_get_usage() + $memoryNeeded > $memoryLimit){
  $newLimit = ceil((memory_get_usage() + $memoryNeeded) / 1048576);
  ini_set('memory_limit', $newLimit.'M'); /* 新しく取得したメモリ量を割り当てる */
 }

追 記

 いつからかそうだったのか知りませんが、Vista Sp1のIE7上で、いつの間にか写真をお洒落に見せるスクリプトのphotoeffect.jsが動いてないのを今日発見しました。VML関係のセキュリティーアップデートで動かなくなったのか理由は定かではありませんが、色々試した結果、

<v:image src="" /> で画像を呼び込むのはダメで、<v:rect><v:imagedata src="" /></v:rect> だと上手く行くようです。なので、久しぶりにphotoeffect.jsもアップデート。ついでに、この効果を施した画像には、photo-canvas というクラス名を付けるようにしました。これで、スタイルシートで、これに対する画像の説明(キャプション)にCSSを適用することが出来ます。

.photo-canvas div.photo-caption { margin: -20px 5px 30px 5px; }

みたいに。


— posted by martin at 03:41 am   commentComment [7]  pingTrackBack [0]

T: Y: ALL: Online:
Created in 0.0059 sec.
prev
2008.4
next
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30