Home

うのらぼ。

【PHP】’ImagickException’ with message ‘No IDATs written into file

今まで見たこと無いエラーが出てきたので。

うーうーうなってたらげこさんが調べてくれました。

http://rubyforge.org/forum/forum.php?max_rows=100&style=nested&offset=2021&forum_id=33

By: Tim Hunter RE: Writing an image to STDOUT [ 返信 ] 2005-11-18 13:18 A follow-up: I checked this out last night. It turns out that to_blob works with 0×0 GIF and MIFF images, and raises a MagickException for a 0×0 PNG image. However, if you call to_blob with a 0×0 JPEG image then libjpeg will exit. I’ve added a check to to_blob for this case. With the test, if you call to_blob for a 0×0 JPEG image to_blob will raise a RunTimeError exception.

「0×0の画像を writtenImage() しようとするとエラーが出るよ!」 ってことらしいです。

実際のコードを見てみたら、 グローバルで定義した変数を、関数の中で使うときに、 global hoge; ってやってなかったので、値が全部 NULL になったのが原因のようでした。

エラーメッセージでググっても答えが見つからなかったのでタイトルにしてしまうのです。

【JS】iPhoneのAudio周りのメモ

自分用にメモ iOS4.0 と 4.2 の端末で色々検証

Continue reading

WordPressのDBバックアップ

WordPress を新しいバージョンに上げるにあたって、 いい加減DBやらファイルやらのバックアップを取ろうと思い立つも、 PHPMyAdmin から弄るのはなんだか億劫(よくわからないし)

ということで、プラグインに頼ることにしました。 テーマや画像をバックアップしてくれるプラグイン | understandard.net WP-DBManager 日本語版 | MMRT daily life

一番目で紹介されてる WordPress Backup は何の問題もなくインストール完了。 バックアップもしっかり取れてました。 同じように、2番目に紹介されてる WP-DBManager (日本語版はアップグレードしたら言語ファイルも消えたので、結局英語版)もインストール自体は難なく完了。 で、いざバックアップを取ろうと思ったら。 「mysqldumpのパスが見つからないよ。わからなかったらサーバー管理者に問い合わせてね」 「mysqlのパスが見つからないよ。わからなかったらサーバー管理者に問い合わせてね」 という警告(原文は英語)が出て、バックアップできず。 色々調べてみるもパスはしっかり通っている模様。

で、みつけたのがこれ。

wordpress db-manager | ロリポップ掲示板

どうやら php.ini の safe_mode が “ON” になっていると上手く動かない模様。 ということなので、safe_mode を “OFF” にして無事バックアップ完了。

WordPress のアップデートしてきまーす。

【JS】iOS4.1以下で、audioを制御できない【とみせかけて犯人はPHP】

■追記 2011/6/8 19:06 —————————————————————————- 解決しました。

実際の環境では、PHPでドキュメントルートの外からmp3のデータを引っ張ってきていたのですが、 そのコード上で、

header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");
と、Content-Type を複数指定していました。 ここを、 “audio/mpeg” のみに(こっそり)直したところ、無事iOS4.0の端末でも再生されるようになりました。 まさかPHPの方が原因だったとは・・・。

結論

iOS4.0(恐らくiOS4.1以下)では、複数の Content-Type には非対応、iOS4.2から(何故か)対応するようになった。

おまけ

ちなみに、 複数指定されていた Content-Type を、それぞれ一つずつ選んで渡してみたところ、次のような結果に。

iOS4.2 iOS4.0
audio/mpeg
audio/x-mpeg
audio/x-mpeg-3 ×
audio/mpeg3

とはいっても、例えば、 “audio/mpeg, audio/mpeg3″ のように指定しても、やっぱり鳴らなかったので、

複数指定はやっぱりダメなようです。

まだ検証中。 とりあえず検証してる内容をメモ。

何が起こったか

iOS4.1以下の端末(iPhone 3GS,iPhone4問わず)で、以下のスクリプトで音声再生ができない。 (実際に検証したのはiOS4.0の端末と、iOS4.2の端末)

var audio = new Audio('hoge.mp3');
$('#play').bind('touchend', function(){
    audio.play();
});

じゃぁなんでiOS4.1以下なの

Safari – Wikipedia iOS4.2 から Safari5 が搭載されるようになってる。怪しい。

HTMLMediaElement Class Reference | Safari Developer Library iOS4.1 まで使われていた autobuffer が廃止され、iOS4.2 からは preload というプロパティに変わっている。

この辺に原因があるのではと思い、この現象はiOS4.1以下で起こるものと推測する。

Continue reading

【JS】iPhoneでタップの反応が遅いと感じたら

iPhone向け(Androidも?)にゲームなどを作る際、 連続でタップをする可能性のあるインターフェース(例えばADVの会話シーンなど)に、 event.click を使ってしまうと、どうも動きがもっさりとしてサクサク進まない。

そういう時は、event.click ではなく event.touchstart/touchend を使うとサクサク進むようになる。

Continue reading

【JS】location.hrefによるXSS脆弱性

指摘を受けたのでメモ。

例えば http://example.com/ に以下のようなコードを書いたとする。

var url = location.href;
document.write('<a href="' + url + '">リロードするお!</a>');

この状態でアドレスバーに http://example.com/#’>”><script>alert(0)</script> と打ち込むと、 IE8以下及びIE9互換モードの場合、alertが実行されてしまう。

Continue reading

【JS】Node.jsはじめました

げこたんが色々いじってるのを横目で見てたらなんだか楽しそうなのでやってみました。 wget とか make とかやってたみたいですがとりあえず MacPorts でサーチかけてみたらしっかりあるではないですか。 というわけで、インストール。

sudo port install nodejs

インストール作業はとりあえずこれで終了。

あとはここに書いてあるJSを作成して実行!

node test.js

127.0.0.1:8124 でしっかりと「HelloWorld」が表示されていたので、これにて終了。

ぱっと見てみた感じ色々できそうで楽しそうだったので今後何に使っていくか検討してみようと思います。 とりあえずは社内の作業用ツールで実験実験。

Thunderbirdが無限ダウンロードに陥ったら

Thunderbirdがサーバーに残ったメールを削除できずに メールのダウンロードを繰り返すようになったら、

[アカウント設定]→[サーバ設定] から 「ヘッダのみ取得する」 にチェックを入れる。

その後再度受信(「処理中です」と言われる場合はThunderbirdを再起動)すると、 メールのタイトルだけが受信されるようになる。

この状態だと本文を開かない限り、サーバーのメールを削除することは無いらしいので、 該当のメールを本文を開かずに削除。

その後「ヘッダのみ取得する」のチェックをはずして、本文をダウンロードしていく。

教えてくれたシステム担当の方に多謝!

【CSS】iPhoneのデバッグコンソールを開くとmedia属性のorientationが効かなくなる

iPhoneでコーディング中、 [設定]→[Safari]→[デベロッパ]→[デバッグコンソール]を”オン”にしていると、 下記のようなCSSの切り替えが効かなくなる。

<link rel="stylesheet" type="text/css" href="./css/iphone_portrait.css" media="only screen and (max-device-width:480px) and (orientation:portrait)">
<link rel="stylesheet" type="text/css" href="./css/iphone_landscape.css" media="only screen and (max-device-width:480px) and (orientation:landscape)">

原因は不明。 3GSでも4でも同様の現象が起こる。

とりあえず忘れないようにメモ。

【CSS】スマートフォン向けWebサイトでdataURIが本領発揮する件

はじめに

画像をBase24とかでエンコードしてdataURIスキームで読み込む、ってことが最近のブラウザでは可能になった訳ですが、 仕事でスマートフォン向けのサイトを作っていた際に、画像の読み込み待ちが気になったのでちょうどいいと思い試してみたところ、 驚くほど早くなった(気がした)ので実際に計ってみました。

Continue reading

Home

Search
Feeds
Meta

Return to page top