麦酒堂
RSS
エントリ一覧
カテゴリ一覧
月別一覧
スープカレー[10 entries]
AH-K3001V[5 entries]
Beer[693 entries]
Books[11 entries]
Camera[16 entries]
Cygwin[10 entries]
Java[9 entries]
JavaScript[5 entries]
Linux[65 entries]
mac[12 entries]
Movabletype[15 entries]
.NET[2 entries]
Photos[24 entries]
PHP[8 entries]
Ruby[5 entries]
Underground[11 entries]
WX310SA[4 entries]
2008年12月[20 entries]
2008年11月[18 entries]
2008年10月[18 entries]
2008年09月[16 entries]
2008年08月[12 entries]
2008年07月[11 entries]
2008年06月[18 entries]
2008年05月[15 entries]
2008年04月[4 entries]
2008年03月[13 entries]
2008年02月[13 entries]
2008年01月[10 entries]
2007年12月[11 entries]
2007年11月[21 entries]
2007年10月[11 entries]
2007年09月[16 entries]
2007年08月[11 entries]
2007年07月[14 entries]
2007年06月[24 entries]
2007年05月[20 entries]
2007年04月[15 entries]
2007年03月[29 entries]
2007年02月[24 entries]
2007年01月[21 entries]
2006年12月[14 entries]
2006年11月[14 entries]
2006年10月[26 entries]
2006年09月[28 entries]
2006年08月[16 entries]
2006年07月[37 entries]
2006年06月[30 entries]
2006年05月[27 entries]
2006年04月[25 entries]
2006年03月[32 entries]
2006年02月[22 entries]
2006年01月[31 entries]
2005年12月[19 entries]
2005年11月[25 entries]
2005年10月[37 entries]
2005年09月[14 entries]
2005年08月[30 entries]
2005年07月[23 entries]
2005年06月[16 entries]
2005年05月[33 entries]
2005年04月[14 entries]
2005年03月[12 entries]
2005年02月[26 entries]
2005年01月[16 entries]
2004年12月[28 entries]
2004年11月[10 entries]
2004年10月[19 entries]
2004年09月[13 entries]
2004年08月[17 entries]
2004年07月[19 entries]
2004年06月[10 entries]
2004年05月[16 entries]
2004年04月[17 entries]
2004年03月[32 entries]
2004年02月[23 entries]
2004年01月[35 entries]
2003年12月[29 entries]
2003年11月[25 entries]
2003年10月[15 entries]
麦酒堂 TOP > > mt-comment.cgi の PHP 化
<< 前のエントリー
次のエントリー >>
  • entry000394
    mt-comment.cgi の PHP 化
    miz 2004-09-05 23:42

    MT をちょこちょこといじっていて,コメント登録の確認画面,エラー画面に手を入れようとしてはたと気付きました. PHP 使えないじゃないすか. コメント登録の確認画面,エラー画面は mt-comments.cgi です.「*.cgi」. PHP が使えないのも仕方ありません.

    しかし,麦酒堂は相当部分が PHP 化されてしまっていて,デザインの一貫性を保つためには PHP が欠かせない状況です. 動的部分だけが Perl というのは,これはなかなか厳しい.

    という背景を踏まえまして,今回 mt-comments.cgi を PHP でラップするという強引なスクリプトを書きました.

    • mt_comments_wrapper.php
    • lib/CGIWrapper.phps

    ラップとは言っても,内部で HTTP リクエストを発行するという疎な呼び出しです. 逆に,mt-comments.cgi が別ホストにあっても良いので,何か変わった使い方もできるかもしれません. 具体的に思いつかないけれど・・・負荷分散とか?
    そしてその HTTP リクエストで mt-comments.cgi が返した文字列を *.php 内に表示します. 使用方法は次のようになります.

    1. Individual entry archive 等の,mt-comments.cgi へ post する form 要素をもつページの先頭に以下のコードを埋め込みます.

      <?php
      include ( "mt_comments_wrapper.php" ); 
      $v_mtCommentsWrapper
        = new mt_comments_wrapper
            ( "mt.mizba.net" , "/system" );
      $v_mtCommentsWrapper->go();
      ?>

      mt_comments_wrapper.php のパスは環境に合わせて設定してください. "mt.mizba.net" , "/system" はそれぞれ mt-comments.cgi が存在するホスト名,パスになります. これも環境に合わせて設定してください.

    2. 既存のフォームの直前と直後に以下のコードを埋め込みます.

      <?php
      if ( ! $v_mtCommentsWrapper->execBody () ) {
      ?>
      
      既存の form 要素
      
      <?php } ?>

      form 要素だけを厳密に囲む必要はなく,mt-comments.cgi の出力で置き換えたい範囲も含めて囲んでください.

    3. 手順 2 で囲んだ範囲は "Comment Preview Template" , "Commment Error Template" に基づく出力で置き換えられます. この二つのテンプレートを編集し,form 要素のみに削ってください. html 要素,body 要素等は不要になります.

    特記事項.

    • form の post 先は mt-comments.cgi ではなく,*.php 自身にしてください.
    • mt-comments.cgi の出力中の <?php ... ?> は PHP のコードとして実行されます.
    MTEntryMore
<< 前のエントリー
次のエントリー >>
最近のコメント
  • new 本日のビール - 11/29 - J-1 グランプリ @新橋 DRY-DOCK [2]
    last comment : miz : 12/01 23:32
  • new マンホールの耐用年数 [2]
    last comment : miz : 09/03 08:48
  • new 飲みました - エーデルピルス - サッポロビール [2]
    last comment : miz : 07/22 08:49
  • new 大型連休山梨旅行 [2]
    last comment : miz : 07/22 08:44
  • new 山田工業所 打出し中華鍋 [5]
    last comment : so : 06/25 23:23
  • new Mac mini にメモリ増設 [2]
    last comment : miz : 06/16 13:08
  • new 飲みました - ザ・プレミアム無濾過 リッチテイスト - キリンビール [3]
    last comment : なまい : 06/03 22:14
  • new 大図典View - 講談社 [2]
    last comment : miz : 05/27 02:30
  • new 本日のビール - 05/20 [2]
    last comment : miz : 05/26 16:46
  • new 吉祥寺の食材事情 [2]
    last comment : miz : 05/26 16:23
最近のエントリ
  • なんだかすごい酒屋さん「酒舗 石塚」
  • 本日のビール - 12/29
  • 本日のビール - 12/28
  • 本日のビール - 12/27 - 新橋DRY-DOCK裏忘年会
  • 本日のビール - 12/26
  • 本日のビール - 12/25
  • 本日のビール - 12/22
  • 飲みました - 明治のラガー / 大正のラガー - キリンビール
  • 本日のビール - 12/20
  • 飲みました - モルツ スノーホワイト - サントリー
  • and more ...
2004年09月
    1. .
    2. .
    3. .
    4. 01
    5. 02
    6. 03
    7. 04
    1. 05
    2. 06
    3. 07
    4. 08
    5. 09
    6. 10
    7. 11
    1. 12
    2. 13
    3. 14
    4. 15
    5. 16
    6. 17
    7. 18
    1. 19
    2. 20
    3. 21
    4. 22
    5. 23
    6. 24
    7. 25
    1. 26
    2. 27
    3. 28
    4. 29
    5. 30
    6. .
    7. .

このページの被検索語(最新20件)
  • cgi エラー画面 php
  • MT Comment
  • mt php include
  • phpのcgi化
  • mt cgi php
  • mt 検索 php
  • CGIをPHP化
  • MT PHP 検索
  • [search.live.com]
  • "mt-comment.cgi" 負荷
  • /mt-comments.cgiとは
  • mt-comment.cgi php
  • mt-comment.cgi
  • cgi php post
  • mt-comment.cgi
  • mt cgi php
  • mt.php 検索
  • mt comment.cgi template error
  • mt-comments.cgi エラー
  • MT::Comment 確認
PageView 9743
(C) Copyright 2003-2008 miz

Some rights reserved.
You can copy the contents in this page (including text and photographs, except program code) and/or redistribute it under the terms of the Creative Commons Attribution-ShareAlike 2.5 License.
(C) Copyright 2003-2008 miz