PHP PEAR :: Mail_MimeDecodeについて

PHPでメール関連の処理を書く必要があったので、PEAR :: Mail_MimeDecodeをインストール。

なんかgoogle先生に聞いてみたら・・・

PEAR :: Mail_Mimeのサブパッケージなので、
PEAR :: Mail_Mimeをインストールすれば一緒について来ます。

って書いてあったので、Mail_Mimeをインストールしたんですが、mimeDecode.phpが見つからない!

“PHP PEAR :: Mail_MimeDecodeについて”の続きを読む

WordPress -Counterize IIプラグインのカウンターをユニークにする

関連記事:WordPressのアクセス解析(カウンター)プラグインCounterize IIを導入CommentsAdd Star

カウンターを表示できるプラグインCounterize IIを先日入れたのだが、先日の手順ではユニークな数で表示してくれない。
つまり、1ユーザが2ページ遷移したらカウントが+2されてしまう訳だ。

なんか騙しカウンターみたいで嫌だなぁ~と思っていたので、暇な今、対処してしまおうと思う。

「昨日」のカウントを取るコードを書くことも出来るそうなのだが、自分のブログには不要なのでそれはカットする。

手順

  1. wp-content/plugins/counterizeii/browsniff.phpの末尾(?>の前)に以下のfunctionを追加

  2. function counterize_getuniquehitstotal()
    {
    $sql = 'SELECT count(DISTINCT ip,date(timestamp)) FROM ' . counterize_logTable();
    $wpdb =& $GLOBALS['wpdb'];
    return $wpdb->get_var($sql);
    }


  3. サイドバー(sideber.php)の適切な箇所に以下を追記。または変更。要はカウンターを表示させたい場所。

  4. <?php echo number_format(counterize_getuniquehitstoday()); ?> <!-- 今日のユニークなカウント -->
    <?php echo number_format(counterize_getuniquehitstotal()); ?> <!-- トータルのユニークなカウント -->
    <?php echo counterize_get_online_users(); ?> <!-- 現在の訪問者数 -->



    参考:Counterize II でWordPressにカウンタを表示する

Eclipse起動時にエラー

■環境
 Windows xp
 Eclipse 3.2
 PDTやらAptanaのプラグインを導入済み
■現象
 1)PHP系のプラグインを使用しているワークスペースの起動時に以下のようなエラーメッセージが出て起動しない。
   An error has occurred. See the log file [ログファイルのパス]
   ログファイルの内容は以下の通り
!SESSION Tue Sep 29 14:04:55 JST 2009 ——————————————
!ENTRY org.eclipse.equinox.launcher 4 0 2009-09-29 14:04:55.359
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.NullPointerException
at org.eclipse.osgi.internal.resolver.StateReader.readBundleDescriptionLazyData(StateReader.java:246)
at org.eclipse.osgi.internal.resolver.StateReader.fullyLoad(StateReader.java:681)
at org.eclipse.osgi.internal.resolver.BundleDescriptionImpl.fullyLoad(BundleDescriptionImpl.java:487)
at org.eclipse.osgi.internal.resolver.BundleDescriptionImpl.getExportPackages(BundleDescriptionImpl.java:123)
at org.eclipse.osgi.internal.resolver.StateHelperImpl.getExportedPackageMap(StateHelperImpl.java:73)
at org.eclipse.osgi.internal.resolver.StateHelperImpl.getUnsatisfiedLeaves(StateHelperImpl.java:108)
at org.eclipse.osgi.internal.resolver.StateHelperImpl.getUnsatisfiedLeaves(StateHelperImpl.java:153)
at org.eclipse.core.runtime.adaptor.EclipseStarter.logUnresolvedBundles(EclipseStarter.java:463)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:189)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
 2)以下のディレクトリの中身を削除すると起動するようになる。
   が、全ての設定がクリアされる。
   [ワークスペースへのパス]\.metadata\.plugins
 3)PHP系のプラグインを使用していない(javaでの開発用途)ワークスペース起動時には同様のエラーは発生しない
 4)以上のことからPHP系のプラグインの仕業と思われる。
対処法も色々考えてみたが、Eclipseのバージョンも3.5に上がっていることだし・・・
これを期に再インストール(バージョンアップ)で解決することにした。
めんどいけど・・・。

PHP -Zend Debuggerの導入

1.Zend Debuggerの入手
  http://downloads.zend.com/pdt/server-debugger/
   →winの場合はZendDebugger-5.2.15-cygwin_nt-i386.zip
2.展開したディレクトリ内の、PHPのバージョンにあったDLLを適当な場所にコピーする。
   →筆者の場合は取りあえず動けばいいので%PHP_HOME%にそのままコピった。
3.php.iniに以下を追記
  zend_extension_ts=”[2でコピったディレクトリ]\ZendDebugger.dll”
  zend_debugger.allow_hosts=127.0.0.1/32
  zend_debugger.expose_remotely=always
4.Apacheの再起動
5.phpinfo関数で確認
   →Zend Debuggerの項目が増えていたらOK
eclipseでどうやって使うかはこれから検証。
■参考
http://www.zend.co.jp/tech/index.php?%B4%C4%B6%AD%B9%BD%C3%DB%2F%A5%C7%A5%D0%A5%C3%A5%B0%B4%C4%B6%AD%A4%CE%BA%EE%C0%AE

“PHP -Zend Debuggerの導入”の続きを読む