ppBlog Warning: LINE 1117 of utils.php: preg_match(): The /e modifier is no longer supported, use preg_replace_callback instead

ppBlog official

Flexを用いた複数ファイルアップロード

category-icon

 こんばんは、martinです。前回のエントリーで述べていたように、次期バージョン(v1.9.0)では、画像ファイルのアップロードの際に、複数の画像をまとめてアップロードできる仕組みを提供予定です。

 現状では、複数の画像を一度にアップロードするには、FlashかJavaを使うしかありません。JavaもFlashも素人ですが、とっつきやすいのはFlashですし、ファイルアップロードに関しては、色んなサイトでソースコード付きのFlash/Flexのデモサイトがあったので、Flexを用いたインターフェイスを作ってみました。

実際に試すことが出来るデモサイトLink

 実際には、Coding CowboysLink というサイトにあったプログラムをベースに、好みのインターフェイスになるよういじっただけです。

uploadInterface
改良したインターフェイス。日本語化したりとか。

 ローカルのフォルダからは基本的に任意のファイルを選べるのですが、画像ファイル(*.jpg, *.png, *.gif)のみに絞っています。また、Flexの練習もかねて、デモページのFlashではアップロードした画像を見ることが出来るように、右下に画像ギャラリーへのリンクボタンを付けてます。

画像ギャラリーへのリンクLink

 ちなみに、このリンク先の画像ギャラリーは、Flashとは関係なしに、単にPHPでページを生成しています。CSSのみを用いたシンプルなものです。IE向けのハックは使ってませんが、IE6でもそう表示が崩れることはないかなと期待。アップロードされた画像ファイルの内、最新のJPEG画像を5枚表示するようにしてます。

galleryShot
CSSのみでのフォトギャラリー。IE6でも何とか動くかな。

 今後、いじるとすれば、ファイルサイズ上限を指定したりとかですかね。とりあえず。

     


— posted by martin at 04:10 am   commentComment [8]  pingTrackBack [0]

差分その2

category-icon

 こんばんは。昨日に引き続き。タグ関連の部分は、色々とアルゴリズムを変えていたんですが、まだ挙動がおかしいようで、それのアップデートです。utils_admin.phpの101行目付近からをいじっています。

 ついでに、今後のロードマップをメモしておきます。

v1.9.0
◆ 複数の(画像)ファイルを1回でアップロード 。Firefox3.6では、ブラウザでこれに対応するLink ようですが、現状は、FLASHに頼ることになるかと思います。
◆ バージョンチェック機能の強化。URLのパラメータで正しいバージョンを出すような仕組み。
v1.9.x
HTML5対応版。HTML5Gでは、HTMLの記述が現状よりシンプルに分かりやすくなると思います。

 

添付ファイル: utils_admin.phpattachedIcon 

 

— posted by martin at 01:39 am   commentComment [0]  pingTrackBack [0]

差分です。

category-icon

 こんばんは、martinです。何となくアップデート後はいつものことのような気がしますが…。

 タグの文字列に、半角スラッシュを入れていると、タグの検索でかかってきません。それの対策もしていたつもりでしたが、詰めが甘いですね。。これはmodules/tags.inc.phpの16行目を以下のようにします。

 $hit = preg_grep('{'.preg_quote($tag).'¥|}', $TAGS_LIST);

デリミッターに半角スラッシュを使っていたのが駄目でした。いつもは{}を使うんですけどね。。

 あと、やはりタグ周りですが、タグに「ソ」などの文字を使っていると、タグが文字化けするという報告がありました。まるでSHIFT_JISみたいですね。これはutils_admin.phpの39行目を修正します。全角空白を省きました。

  $tags = p_('tags') ? explode(',', preg_replace(array('{([^&]),[¥s]+}', '{,[¥s]*$}'), array('$1,', ''), p_('tags'))) : array();
ここでの正規表現で、全角空白を入れていたせいで、誤変換をしてしまったようです。UTF-8だから大丈夫かと思いましたが、preg_replace自体がマルチバイトに対応しているわけではないですからね。u修飾子でも入れればよいかもしれませんが、まぁいいか。

 ついでですが、IE6/7のサポートは基本的にやめようかと思っていたのですが(特に管理者用として)、まだ使われているようですし、折角のタグポップアップがIE6で使えないのは残念なきもするので、対応したwrite.inc.phpedit.inc.phpも添付しておきます。

添付ファイル: tags.inc.phpattachedIcon  write.inc.phpattachedIcon  edit.inc.phpattachedIcon  utils_admin.phpattachedIcon 

 


— posted by martin at 01:52 am   commentComment [7]  pingTrackBack [0]

ppBlog1.8.8 リリース

category-icon

 こんにちは、martinです。もう師走ですね。ppBlogの最新版をリリースしました。

 結果的には、タグ周りの修正がメインになりました。従来は、スペースを含むタグ(health careとか)は仕様により入力不可でしたが、これを可としました。なので仕様の変更があります。記事入力画面下にタグを入力するエリアがありますが、複数のタグを指定する場合は、(半角のカンマ + スペース)で区切るようにします。従来は、スペースのみで区切る方式でした。

 なお、タグ入力支援として、よく使うタグ順にプルダウンメニューを表示させるようにしています。イメージとしては以下の感じです。
autoTags
擬似プルダウンメニューです。タグの入力が簡単になります。

 こういうギミックがあると、なんだか楽しくて色々タグをつけたくなります(まだ十分には動作の検証はしていませんが・・・)。

 そのほかの修正としては、前回エントリーで紹介したように、アクセス解析に記事アクセスランキングを統合したりとか、モブログの設定で、その場で指定したメールサーバーへのログインを試みて、有効なサーバーアドレスであるかとか、適切なログイン名であるかをチェックするようにしたりとか、主に使い勝手の向上がメインです。

 あ、あと記事アクセスランキングに関連して、ログインした状態では、各記事のタイトル右に小さくレビュー数を表示させるようにしました。

reviews

 この表示が不要という方は、utils.phpの12行目に設定できる項目があるので、そこでゼロ(0)とかFALSEを指定すると良いです。

define('SHOW_REVIEW_COUNT', FALSE); // 管理向け者に記事の参照数を表示させるか(記事タイトル右)

 例によって、v1.8.7との差分ファイルを添付しておきます。基本的には、単なる上書きで良いです。

添付ファイル: DIFF187_188.zipattachedIcon 

 


— posted by martin at 08:27 am   commentComment [14]  pingTrackBack [0]

アクセス解析に記事アクセスランキングを統合

category-icon

 こんばんは。先週、A型インフルエンザのワクチンを接種しました。ラボのみんなが行く際に「マーチンも行く?」「うん。」で。3-4日ほど痛かったなぁ。

 さて、v1.8.8のリリースに向けて、アクセス解析をいじってます。現行の最新版(v1.8.7)では、記事のアクセスランキングを記録する機能がついていますが、タイミングによっては集計されたランキングがリセットされる現象もあるようで、その辺りはバックアップファイルを作るようにしたりして、せっかくの集計がリセットされないような手段を講じています。

 で、前々から記事のアクセスランキングは、アクセス解析でも見られるようにするのが良いなと思っていたんで、そうしてみました。

Ranking
こんな感じです。トップ3は、気持ち見やすく。

 それ以外にも、見栄えの修正やら、動作を少し変えたりしています。例えば、「検索ワード」などにおいて、データ量が多いと表示するテーブルが縦長になり、ページスクロールするのにもたつきを感じるようになります(少なくとも、MacBookProユニボディーの中のVMwareで動いているWindows7ではそうです)。なので、こういうのは、テーブル要素を含んでいるDIV要素の下端をブラウザの下端ぐらいまでにとどめて、DIV要素にスクロールバーが表示されるようにしています。これで、動作もスムーズにまりました。上のスクリーンショットでも、スクロールバーがDIV要素に表示されているのを確認できると思います。

 ある程度以上のバージョン(v1.6以上ぐらい?)であれば、記事アクセスランキングの集計がなくても問題なく動くと思うので、先に試されたい方はどうぞ。フィードバックなど大歓迎です。基本的には、statディレクトリのview.phpstat.cssの上書きです。後、ランキング表示用のアイコンが2つです。これはstat/iconディレクトリにアップロードします。

添付ファイル: stat188.zipattachedIcon 

— posted by martin at 10:22 am   commentComment [5]  pingTrackBack [0]

T: Y: ALL: Online:
Created in 0.0043 sec.
prev
2024.3
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
31