‘php’ タグのついている投稿

phpエラー:It is not safe to rely on the system’s timezone settings.

2009 年 12 月 6 日 日曜日

別PCからデータを移したXAMPP先でエラー発生。XAMPPは関係なしにPHPで下記のようなエラーが出る場合


Warning: date() [function.date]: It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Tokyo’ for ’9.0/no DST’ instead in C:***/***/***.php on line **


タイムゾーンの設定がなされていない事が原因。
下記設定を追加。
date_default_timezone_set(‘Asia/Tokyo’);

参考
date関数で”Asia/Tokyo・・”なんかのエラーが出る件:PHP5.1.0以降
It is not safe to rely on the system’s timezone settings.

このエントリーを含むはてなブックマーク

phpのhtmlソースの先頭に余計な半角スペースが挿入される

2009 年 8 月 16 日 日曜日

メモ帳等でPHPをいじるとデザインが崩れている場合がある。よくよく調べてみると、1行目に半角スペースが挿入されており、この半角スペースがデザイン崩れを招いている場合がある。こういうケースの場合、大概BOM (Byte Order Mark)が関係している。

解決方法は、Terapad等を用いてBOMが挿入されないようにする。

このエントリーを含むはてなブックマーク

CoreserverでOpenPNE 2.xのメールが送信されない

2009 年 7 月 14 日 火曜日

Coreserverは標準ではPHPのSAFE MODEにより、通常の状態でOpenPNEをインストールしてもメール配信が機能しない。.htaccessでPHPのSAFE MODEを解除するか、config.phpの395行目のfalseをtrueに変更する事でもメール配信が可能になる。

参考
XREAでOPENPNEを構築したがメールが送信されない
http://ikkyu.livedoor.biz/archives/50701746.html

このエントリーを含むはてなブックマーク

Xserverでphp5にならない場合はドメインをチェック

2009 年 6 月 2 日 火曜日

XserverでWordpressのPluginの幾つかがエラーで動かなかった。php4だと出現するエラーらしい。
Xserverでphp5に変更したと思ったんだけど…と思ったが、なっていなかった。

Xserverでは、設定したドメインごとにphp4とphp5のどちらかが選べる仕組みになっていた。
phpのバージョン変更は現在のドメイン設定を要確認。

このエントリーを含むはてなブックマーク

Exec-PHPを有効化し、投稿しようとするとWYSIWYG Conversion Warning.

2009 年 5 月 23 日 土曜日

Exec-PHPは有効化し、且つ、プロフィールのDisable WYSIWYG Conversion Warningにチェックを入れないと以下のようなエラーが発生する。

Exec-PHP WYSIWYG Conversion Warning. Saving this article will render all contained PHP code permanently unuseful. Even if you are saving this article through the Code editor. You can turn off this warning in your user profile. Ignore this warning in case this article does not contain PHP code. Read the Exec-PHP documentation if you are unsure what to do next.

解決方法は、あなたのプロフィールのDisable WYSIWYG Conversion Warningにチェック。

参考
Exec PHP
http://bluesome.net/post/2005/08/18/50

WordPressにプラグインExec-PHP 4.9をインストール
http://ippitsu.sakura.ne.jp/archives/210

このエントリーを含むはてなブックマーク

WordPressの投稿記事でPHPを実行させるプラグイン:Exec-PHP

2009 年 5 月 23 日 土曜日

WordPressの各所でPHPを実行させるプラグインは多数存在するが、Exec-PHPはプラグインを有効化するだけで、特定のタグや設定なしにWordPress内でPHPを使う事が可能になる。

Exec-PHP
http://bluesome.net/post/2005/08/18/50/

ただし、プロフィールにPHPを許可するかどうかの設定が必要となる。

このエントリーを含むはてなブックマーク

WordPressでプラグイン等のアップグレード時にSAFE MODE Restriction in effect.が表示される

2009 年 5 月 1 日 金曜日

WordPressのプラグイン等のアップデート時にSAFE MODE Restriction in effect.というエラーが出現する場合がある。
正確にはfunction….SAFE MODE Restriction in effect. ファイルパスというような形で詳細が表示される。

これは、読んで字の如くphpのセーフモードに関するエラー。CORESERVERや(おそらくXREA)で運用していると表示される場合がある。(コンパネにpleskを導入しているサーバーでセーフモードにチェックが入っていたりする場合もこのエラーに該当)

.htaccessにAddHandler application/x-httpd-phpcgi .phpを導入する事で問題解決

このエントリーを含むはてなブックマーク

モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法

2009 年 4 月 24 日 金曜日

Google Analyticsはデフォルトの状態では携帯サイトに用いようとしても、JavaScriptがソースとして吐き出されてしまう。
Google Analyticsを携帯サイトで利用するためのライブラリでGA4Kなどが出ているが商用となるとライセンスが気になる。

…という事で、Knowledge Database ITさんの、モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法を参考に標準的に使用できるようにカスタマイズ。※Knowledge Database ITさんはPHPのフレームワークであるsymfonyを用いるソースになっている。

モバイル(携帯サイト)でアクセス解析にGoogle Analyticsを使う方法
http://it.kndb.jp/entry/show/id/2376

カスタマイズといっても変更するのはリファラを通常にセットしなおすだけ。
あとは任意の箇所に<?php mobile_analytics(‘UA-xxxxxx-x’, ‘サイトのドメイン’); ?>と共に埋め込むだけ。
※<?php use_helper(‘Analytics’);?>は必要なし。

<html>
<?php
  function mobile_analytics($uid = ”, $domain = ”)
  {

    $var_utmac=$uid; //enter the new urchin code
    $var_utmhn=$domain; //enter your domain
    $var_utmn=rand(1000000000,9999999999);//random request number
    $var_cookie=”;//$session; //cookie number
    $var_random=rand(1000000000,2147483647); //number under 2147483647
    $var_today=time(); //today

//▼コメントアウト
//$var_referer=sfContext::getInstance()->getRequest()->getReferer();//$_SERVER['HTTP_REFERER']; //referer url

//▼追加
    $var_referer=$_SERVER['HTTP_REFERER']; //referer url

    $var_uservar=”;//$storeinfo['storeid']; //enter your own user defined variable
    $var_utmp=$_SERVER['REQUEST_URI']; // request uri

(途中略)

    $header = ”;

    //Set the language to that of the client so analytics can track it.
    if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
      $header = ‘Accept-language: ‘.$_SERVER['HTTP_ACCEPT_LANGUAGE'].’\r\n’;
    }
    //Set the user agent to that of the client so analytics can track it.
    if (!empty($_SERVER['HTTP_USER_AGENT'])) {
      $header = ‘User-Agent: ‘.$_SERVER['HTTP_USER_AGENT'].’\r\n’;
    }

    $opts = array(
      ‘http’=>array(
        ‘method’=>’GET’,
        ‘header’=>$header
      )
    );

    $handle = fopen($urchinUrl, ‘r’, false, stream_context_create($opts));
    $test = fgets($handle);
    fclose($handle);
  }
?>
<?php mobile_analytics(‘UA-*************’, ‘sample.com’); ?>
<body>

コンテンツを記載

</body>
</html>

一応、これでDoCoMoの実機のアクセスを確認済み。

このエントリーを含むはてなブックマーク

PHPエラー:Warning: mb_ereg() [function.mb-ereg]: mbregex compile err: premature end of char-class ***.php on line xxx

2009 年 4 月 16 日 木曜日

xampp(PHP)で警告文が出ないのに、サーバーにアップするとWarning: mb_ereg() [function.mb-ereg]: mbregex compile err: premature end of char-class ***.php on line xxxというエラーが発生するケースがある。

この場合、mb_ereg()の手前に mb_regex_encoding(“UTF-8″);を挿入する事で解決できる。
xamppでエラーが出ている場合は、プログラムそのものに間違いがある可能性が高い。

このエントリーを含むはてなブックマーク

phpのmb_convert_kanaで変換できない時のチェック

2009 年 4 月 13 日 月曜日

mb_convert_kanaは全角仮名を全角カナに変換する等を行う事ができる。

紹介サイトで$test = mb_convert_kana($test, ‘KVC’);というような例があるが、変換されない事がある。
そこで$test = mb_convert_kana($test , ‘KVC’, ‘utf-8′);のように文字コードを指定する事で正常に変換できる。

このエントリーを含むはてなブックマーク