タグ

developとphpに関するmodemのブックマーク (12)

  • Tips 動的にテンプレートを変えるプラグイン - PETIT POWER w/ZeRo

    SJIS TIPSの流れから引き続き、関連のTIPSです。 といっても、テンプレートを変更するプラグインでTemplateSwitcherっていうプラグインがあるんですが・・・基はこれと同じなわけです。 条件をUAによって振り分けれれば、SJISプラグインと合わせることによりページング処理を除いて携帯対応ってことになりますね。 今回使用するイベントは、OnLoadWebDocumentっていうイベントです。 このイベントが発生したときには、実は$modx->documentContentという変数には使用するテンプレートが展開されて入ってきてます。 このあとに、中身をパースしてドキュメントの中身を指示に従って入れ込んだり、スニペットを呼び出したと実際のページ作成の処理に入っていきます。 なので、このイベントでテンプレートの中身を入れ替える必要がでてくるわけです。 以下のコード

  • あ~ゆ~どりま~ | MODxで携帯コンテンツ その2

    昨日の日記で書いてた文字コード変換のプラグインをもう少し効率よくしてみた。 [プラグイン名]UTF-8 to Shift_JIS [イベント]OnWebPageInitのみにチェック [備考]プラグイン名を変えると動きません [機能説明]$parentIdに設定したドキュメントIDより下の階層にあるドキュメントはUTF-8からShift_JISにエンコードさせて出力される。 //------------------------------------------------------------------------ // // UTF-8 to Shift_JIS for MODx // // Author : soushi // Version : 1.10 // Date : 2007/12/26 // //------------------------------------

  • ログをFirebugのコンソールへ出力してみる。 - gounx2の日記

    これは何? 次のようなスクリプトを書いたときに・・・ <?php include_once dirname(__FILE__) . '/__init__.php'; Rhaco::import('LoggerPublisherFirebug'); // 追加してるのはここと。 LoggerPublisherFirebug::initialize(true); // ここだけ。 class Test{ var $v_int = 99; var $v_string = "string"; var $v_array = array(1,2,3); var $v_hash = array("keyA"=>111,"keyB"=>"222"); } $o = new Test(); Logger::info($o); ?> firebugのコンソールタブに以下が出力されます。 文字列以外(オブジェク

    ログをFirebugのコンソールへ出力してみる。 - gounx2の日記
  • 1プロセスだけが実行されることを保証するクラスを作った(PHP) - ベイエリア情報局

    元Vine SPARC開発者。2003年度未踏ユース採択者。ウノウ株式会社立ち上げ時に参画して4年間CTOとして従事。退職して現在P&Aラボにて客員起業家として起業準備中。 cronにジョブを登録して、バックグランドで定型処理を実行することをよくやるかと思います。 その時に必ず一つのプロセスだけが実行されることを保証したい時があります。 こういう時にみなさんはどのようにやっているでしょうか。 案1: cronに時間間隔をある程度あけて実行する 毎分実行するとかじゃなくて、5分くらい間隔を開けて実行するようにする。 5分以内に処理が終われば、複数プロセスで実行されることはありません。 cronの設定をちょこっと変えるだけで簡単にできます。 でも、こういうことするとメンテナンスが面倒だし、いつの間にか複数プロセスが立ち上がってたりするんですよね ToT 案2: ロック処理をいれる ロック処理を

  • 絵文字ライブラリをPEARパッケージ化&sfPictogramMobilePluginをバージョンアップしました。

    絵文字ライブラリをPEARパッケージ化&sfPictogramMobilePluginをバージョンアップしました。 こんにちは。相変わらず携帯ネタで引っ張る亀です。 先日、第32回PHP勉強会へ参加してきました。 詳細はid:maru_ccさん、id:sotarokさんなどなど大勢の方がブログに書いてくださっているので割愛しますが、なんだかEthnaの話とPHP以外の話が非常に多い会でした。 そのなかでid:maru_ccさんがEthnaでの携帯サイト構築の話をしてくださったのですが、結構いろいろな質問が飛び交っていて、やっぱりもっと携帯周りの情報共有が進むといいのにね、もったいないよね、という話を何名かの方としていました。 そんな話に少しばかり触発されて、絵文字プラグインを公開していた自分としても、もっといろんな人の役に立ててもらいたいと思って、syfmony用のプラグインだったものを

    絵文字ライブラリをPEARパッケージ化&sfPictogramMobilePluginをバージョンアップしました。
  • memcachedを使ったPHPのシングルトン実装 - 徒然なるままにBlog

    PHPのクラスに備わっているstaticはJava(Servlet)のそれとは違いHTTPのリクエストが完了すると破棄されてしまいます。 そのためstaticフィールドを使ったシングルトンの実装を行ったとしてもリクエストがある度にインスタンスが生成され独立したプロセスから同一のインスタンスにアクセスすることは不可能です。 そこで今回memcachedを利用しPHPの各プロセスから同一のインスタンスを参照できるようにしてみたいと思います。 といってもシリアライズさせているので厳密には別のインスタンスになりますが…。 ちなみにmemcachedとはオブジェクトをメモリにキャッシュさせるPHPとは独立したサーバプログラムです。 利用できる言語はPHPだけに限らずPerlRubyJavaPythonなどにも対応しています。 インストールは./configure && make &

  • AjaxMail:Ajaxを活用したフリーPHPメールフォーム

    ウェブサイトを動的なページに変更したい、機能を拡張したいと思ったら、 Ajaxのツールを使って簡単に機能を拡張してみよう。 ウェブサイトを運営するとき、サイトを見たユーザーからコメントを残してもらうことがあります。 また、企業なら連絡方法としてメールの送信ができるように、メールフォームを用意していると思います。 こうしたウェブサイトのメールフォームをAjaxを使って導入することができます。

  • ke-tai.org > Blog Archive > 携帯サイトでSmartyを使う場合の注意点

    携帯サイトでSmartyを使う場合の注意点 Tweet 2008/2/12 火曜日 matsui Posted in PHP | 1 Comment » 「ケータイサイトにSmartyを使おうとしたがうまくいかない」という質問をよく受けることがあるので、注意点をまとめてみます。 問題となるのは、文字コードに「Shift_JIS」を使った場合です。 最近は対応端末が増えたため、UTF-8でページを作る場合も多いですが、過去の資産やら、互換性の問題やらでShift_JISを使うこともあります。 ところがSmartyではSJISは使えません。 なぜなら、Smartyの標準のデリミタである 「 { 」 (0x007b)、  「 } 」 (0x007d) を、SJIS文字列が含んでしまっていることがあるからです。 (つまり必ずしもエラーにはならないことに注意が必要です) エラーが起こった場合には次の

  • コメント: PHPは駄目な言語なのか? - スラッシュドット・ジャパン

    趣味でやっている人のことは、まあ、いいとして(踏み台にされる可能性はあるけど)、仕事PHPを使うときの注意を書いておこう。 コーディング規約を守る。組織にコーディング規約がないなら、Zend Framework PHP標準コーディング規約 [zend.com]を使う。オレ流コーディングスタイルは禁止。 内部コードにはEUC-JPかUTF-8を使う。入出力もできるだけShift JISを避ける。Shift JISを使う場合には2byte目に0x5Cを含む文字の動作を忘れずに確認する。 開発環境の警告レベルをE_STRICTにする。番環境ではdisplay_errorsをオフにする。 register_globals、magic_quotesはオフにする。 type hintingを積極的に使う。 スコープの長い配列をクラスでラップする。 プレゼンテーションとロジックを分割すること。プレゼ

  • HTTPのGET/PUTリクエストを直接行えるHTTPテストツール「RestTest」:phpspot開発日誌

    RestTest RESTTest allows you to construct custom HTTP requests to directly test requests against a server. HTTPのGET/PUTリクエストを直接行えるHTTPテストツール「RestTest」。 特定のURLに対してGETするのはブラウザのアドレスバーからも行うことが出来ますが、POSTしたり、ヘッダーを設定することは出来ません。 RestTest はFirefoxの拡張機能で、POST値を適当に調節したり、ヘッダーを独自に書き換えることが可能です。 ヘッダーは Headers 欄を適当に埋めればOK。 POST/PUT dataの欄には、〜=〜 の形式で入力すればOK WEB開発に活用できそうですね。

  • なぜPHPアプリにセキュリティホールが多いのか?:第1回 CVEでみるPHPアプリケーションセキュリティ|gihyo.jp … 技術評論社

    Ubuntu 24.04 LTS(noble)の開発 / ベータリリースとNetplan v1.0⁠⁠、『Ubuntu Pro for Devices』の発表とQualcommとの協業 吉田史 2024-04-12

    なぜPHPアプリにセキュリティホールが多いのか?:第1回 CVEでみるPHPアプリケーションセキュリティ|gihyo.jp … 技術評論社
  • 初級PHPプログラマがおかしがちなミスTOP10:phpspot開発日誌

    The PHP coder's top 10 mistakes and problems @ SourceRally.net PHP CommunityPHPプログラマがおかしがちなミスTOP10」、という記事があったので紹介。 PHP初心者だとこういうミスがよくありますね。ということで今年からPHPをはじめようと思っている人には気をつけてほしいリストです。 生でクエリを出力しない echo $_GET['username']; ↓ echo htmlspecialchars($_GET['username'], ENT_QUOTES); やらないとクロスサイトスクリプティングされます。 SQLクエリに$_GET,$_POST,$_REQUESTの値を直接含めない $sql = "select * from table where id=".$_GET["id"]; ↓ $sql =

  • 1