‘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が挿入されないようにする。

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

モバイル(携帯サイト)でアクセス解析に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′);のように文字コードを指定する事で正常に変換できる。

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

PHPメール送信スクリプトで文字化けする場合

2009 年 3 月 22 日 日曜日

PHPメール送信スクリプトで文字化けする場合はmb_send_mailを記載する前に以下を追加

mb_language(‘Japanese’); //文字化け対策
mb_internal_encoding(“UTF-8″); //文字化け対策

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

PHPにxml version=”1.0″ encoding=”UTF-8″を記載するとParse error

2009 年 3 月 22 日 日曜日

PHPにを記載すると以下のようなエラーが出る。
Parse error: syntax error, unexpected T_STRING in *********/complete.php on line 1

これは<??>の部分をPHPスクリプトと判断するため。
<?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?>と記載すれば問題解決できる。
<?php echo ‘<?xml version=\”1.0\” encoding=\”utf-8\”?>’; ?>と記載すれば問題解決できる。

※\はwindowsでは¥(半角の円マーク)


追記
<?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?>から
<?php echo ‘<?xml version=\”1.0\” encoding=\”utf-8\”?>’; ?>に変更

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

xamppをインストール後にコマンドプロンプトからmysqlを実行する

2009 年 3 月 12 日 木曜日

xamppの場合phpMyAdminがインストールされるので、コマンドプロンプトを用いる必要性はほとんどないが、一般的な参考書や古いphpやMySQLの参考書はapachのインストール、phpのインストール、MySQLのインストールという手順を踏んでいるので、少し悩む初心者も多いが、xamppの場合はパスが若干異なる程度で、最新のapachやphp,mysqlのインストールに悩む場合、xamppを導入して互換をとればいよい。(互換という程のものではないが…

一般参考書
C:\mysql\bin

xampp
C:\xampp\mysql\bin

なお、windowsコマンドプロンプトでlinuxで使うlsの相当するコマンドはdir

C:\xampp\mysql\binに移動しmysqlと実行すると
mysql>
と表示される。

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

remove_filterでアクションとフィルターの除去(wordpress関数)

2009 年 2 月 16 日 月曜日

php(plugin)に記載する事で適用。
Defaultで自動挿入される<p>~</p>タグや<br />タグを除く事が可能。

http://wpdocs.sourceforge.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3_API?rdfrom=http%3A%2F%2Fbono.s206.xrea.com%2Fwiki%2Findex.php%3Ftitle%3D%25E3%2583%2597%25E3%2583%25A9%25E3%2582%25B0%25E3%2582%25A4%25E3%2583%25B3_API%26redirect%3Dno#Removing_Actions_and_Filters

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

EC CUBEでブロックやシステム変更で¥円マークが出る問題の解決方法

2009 年 1 月 27 日 火曜日

デフォルトの.htaccessに以下の文を追加

AddHandler application/x-httpd-php5cgi .php
php_flag magic_quotes_gpc off

次に以下を記載したphp.iniを作成

AddHandler application/x-httpd-php5cgi .php
mbstring.language Japanese
output_handler mb_output_handler
mbstring.encoding_translation 1
magic_quotes_gpc = off
#php_flag session.use_cookies 0
#php_flag session.use_trans_sid 1

mbstring.internal_encoding UTF-8

upload_max_filesize 5M

このphp.iniファイルを /html/admin/ 直下及び直下のフォルダ以下すべてに、/data/直下に配置。

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