タグ

2008年1月31日のブックマーク (11件)

  • Seam Carvingで自然に画像をリサイズするPHPエクステンション

    $ tar xzf seam_carving.tar.gz $ cd seam_carving $ phpize $ ./configure $ make modulesディレクトリにseam_carving.soができあがるので make install でインストールするなり、どこかのディレクトリにおいておきます。 準備ができたら、以下のようにしてリサイズします。 <?php dl('seam_carving.so'); $im = imagecreatefromjpeg('Antelope.jpg'); $new_im = seam_imagecreate($im, 100); 画像のリサイズは seam_imagecreate関数で実行します。第1引数がGDの画像リソースで、第2引数が横方向にカットするピクセル数です。 マシンスペックにもよると思いますが、1024×768の画像を1

    Seam Carvingで自然に画像をリサイズするPHPエクステンション
    asiamoth
    asiamoth 2008/01/31
  • 第8回 クロスサイトスクリプティング対策の落とし穴 | gihyo.jp

    今回は熟練したWebアプリ開発者なら常識のクロスサイトスクリプティング対策の落とし穴を紹介します。 JavaScriptを排除しているつもりで排除に失敗?! 最近はSanitize(サニタイズ)という言葉の代わりにValidation(検証)という言葉をよく聞くようになったと思います。Sanitizeの意味を辞書で調べると「汚れている物をきれいにすること」とされています。この意味の通り汚れた変数をきれいにして使えば安全に利用できるとする考え方に基づくのがサニタイズ手法です。典型的な例は、「⁠テキストを出力する前に"<"と">"を取り除く」方法があります。 例1 "<"と">"をereg_replaceで取り除く $safe_text = ereg_replace($_GET['text'], '[<>]', ''); この$safe_textを <a href="/script.php?t

    第8回 クロスサイトスクリプティング対策の落とし穴 | gihyo.jp
    asiamoth
    asiamoth 2008/01/31
  • 連載:なぜPHPアプリにセキュリティホールが多いのか?|gihyo.jp

    第42回PostgreSQL 9.0に見るSQLインジェクション対策 大垣靖男 2011-05-19

    連載:なぜPHPアプリにセキュリティホールが多いのか?|gihyo.jp
    asiamoth
    asiamoth 2008/01/31
  • magic_quotesを有害認定したのは間違いじゃなかろうか。

    magic_quotesがダメなのは、セキュリティ対策として機能が足りないのであって、magic_qoutesを使うとセキュリティ意識が思考停止するからと完全否定した結果として、今の状況があるのかもしれない。 変なクオートがつくので、元に戻す処理をしなきゃいけないのはダサいし、ディレクトリトラバーサルとか、その他の問題には無力だからというのもわかるんだけど、少なくともSQLインジェクションなど限られてかつ重要な問題に対しては回避可能なのだから、その批判に対してやらなきゃいけないのは、機能を向上したり、機能を追加することで、なんとかフォローできないか?って話であって、 セキュリティは開発者の意識として全般的にカバーされるべしという理想論の元、magic_quotesを使うなってネガティブな方向に行くのは勿体ないなぁと単純に思った。 っていうか、他の人が嘆いていることがそのまま現状の答えで、免

    asiamoth
    asiamoth 2008/01/31
    「はまちちゃんグリモン化」……! その恐ろしさを一瞬で理解して、怖くなった。/けっこう汎用化できそうなのもドキドキする。
  • jQuery の $(function) が ready イベント発生後だと動かない問題の解決法 - IT戦記

    ready にまつわる「ややこしい問題」で 川崎さんが困っているようなので、 [jQuery] $(function)はonload後には効かない Kawanet Blog II/ウェブリブログ 解決方法を書きます 実は (たぶん)その「ややこしい問題」のために用意されている関数が jQuery にはある jQuery.event.special.ready.setup() /* または */ $.event.special.ready.setup() 試したことはないけど。たぶん上の関数を ready イベント前(ロードされる前)に呼び出してあげると、その「ややこしい問題」を解決できる 関数名が長いけど $(function(){}) のようにダミー関数を空呼びするよりは奇麗かなあ?

    jQuery の $(function) が ready イベント発生後だと動かない問題の解決法 - IT戦記
    asiamoth
    asiamoth 2008/01/31
  • 初心者はPHPで脆弱なウェブアプリをどんどん量産すべし

    http://www.rubyist.net/~matz/20080126.html#p04 趣味でやってるプログラミング初心者の立場で言わせてもらう。だいたいな、あんたらプロのプログラマが小難しい顔してセキュリティセキュリティ言うもんだから初心者プログラマのセキュリティ意識がまったく向上しないばかりか、よけいに低下するんだよ。ごちゃごちゃ言われたり叩かれるのはイヤだけど、眼前の問題はプログラムで解決したいってヤツは耳塞いで黙ってPHPでやりたいようにやるんだよ。何が「楽しいRuby」だよ。「Webアプリケーションをなめるな」ってその時点でもう全然楽しくねーだろが。 それでこれだよ。 http://d.hatena.ne.jp/essa/20080130/p1 もう萎縮萎縮!初心者超萎縮ですよ。「あーセンコーうぜー。隠れてタバコ吸おう」って高校生の心境だよ。難しい顔して訳知り顔でかっこつけ

    初心者はPHPで脆弱なウェブアプリをどんどん量産すべし
    asiamoth
    asiamoth 2008/01/31
  • LDRize専用のmicroformatsについて | 3.14

    先に結論LDRize専用のオレオレフォーマット案には反対です.その理由を書きます.ついでに今後の展望について書くつもりでしたが,疲れたので途中まで. 今までの話の流れ - 内部向けのサイトなので,公にSITEINFOを書きたくない - 「v」「o」で開くようなリンクはなく,「j」「k」のスクロール操作だけを利用したい ちょっと特殊なケースですね. 実は,これは今まで見えにくかっただけで,LDRizeの一番の利点を生かしたケースじゃないかと思っています.ちょっとだけTumblrに書いたやつやちょっとだけTwitterに書いたやつ1ちょっとだけTwitterに書いたやつ2以外はまだオンラインにあげてないので,詳しくはまた今度書きますが(多分),LDRizeの利点は以下の3つだと考えています. 読み飛ばせる 位置を調整できる 記事単位でなんらかの操作ができる じゃあ,今回のケースのようなサイトで

    asiamoth
    asiamoth 2008/01/31
  • いろんなサイトの検索結果にRSSへのリンクを加えるGreasemonkey - Liner Note

    オークション, ニコニコ動画, Google(番組検索)の検索結果にRSS autodiscovery用のタグを加えるGreasemonkeyを公開しておきますいろんなサイトの検索結果にRSSへのリンクを加えるGreasemonkey 書いた人: leva 投稿日: 2008年01月30日(最終更新:4ヶ月と2日前) 読者の皆さんの反応 0 被ブックマーク数: 1 要約:オークション, ニコニコ動画, Google(番組検索)の検索結果にRSS autodiscovery用のタグを加えるGreasemonkeyを公開しておきますこのサイトの検索結果をRSSで講読できたら便利なのになーと思う時ってありますよね。世の中広いのでその検索結果をプログラミングしてRSSにしてくれている人がいらっしゃったりして、私も便利に使わせていただいています。もう少しかゆいところに手が届くように

    asiamoth
    asiamoth 2008/01/31
  • http://bizcaz.com/archives/2008/01/28-011535.php

    asiamoth
    asiamoth 2008/01/31
    これは凄い。ううむ、どんどんプラグインが不要になるなー。
  • OperaUserJavascriptManager:暴満館

    ダウンロード ダウンロード userjsmanager.zip ver0.32 2008/01/30 これは? Operaのユーザースクリプトを管理するためのツール。 GreaseMonkeyのパクリ。Ruby+VisualuRuby+Exerb製。 初回起動 ウインドウ右下にある[アプリケーションの設定]ボタンから、 [スクリプトを読み込むディレクトリ]を選択してください。 設定ダイアログの[保存]ボタンを押して閉じると、スクリプトの一覧が表示されます。 アンインストール レジストリを一切操作しないので、 フォルダ毎削除するだけで跡形も無く消すことができます。 機能・上部ボタン郡 [有効にする/無効にする]ボタン スクリプトが既に有効ならファイル名の最後にアンダースコアを付けて機能しないようにします。 スクリプトが既に無効ならファイル名の最後のアンダースコアを取り除いて機能する

    asiamoth
    asiamoth 2008/01/31
  • PHPマニュアルに名前空間の記述が追加された - Do You PHP はてブロ

    高木さんキター!ホントにありがたいことです。最近全然お手伝いできなくてすみません。。。 PHP 5.3.0以降で導入予定の名前空間についての解説が、公式マニュアルに追加されました。 名前空間の他、遅延静的束縛 (Late Static Bindings)についても記載がありますね。たとえば <?php class A { public static function who() { echo __CLASS__; } public static function test() { self::who(); } } class B extends A { public static function who() { echo __CLASS__; } } B::test(); というコードがあったときに「A」が表示されるのか?「B」が表示されるのか?ということですが、 PHP5.3以前:A

    PHPマニュアルに名前空間の記述が追加された - Do You PHP はてブロ
    asiamoth
    asiamoth 2008/01/31
    PHP5.3以降は、selfの代わりにstaticを使う。注意が必要。