勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

エラー管理まとめ2

      2014/07/02

これに続いてちょっとだけつまづいた点があったのでメモ。

■ソース
//ページTOPに記述
error_reporting(E_ALL ^ E_NOTICE);
ini_set('display_errors',0);
ini_set('log_errors','On');
ini_set( "error_log", "./logs/error.log" );

//SQLmysql_queryの直後に記述
if (mysql_error()) { //エラー発生時ログファイルに書き込み
$error = __LINE__."行目\n".$sql."\n".mysql_error()."\n\n";
error_log($error, 3, "./logs/error.log");
}

■ログファイル
上のソースだとプログラムファイルがあるフォルダに
logsフォルダを作って、その中にerror.logを作成する。

logsフォルダとlogファイルはどちらも書き込みができるよう、
パーミッションに気をつける。

また、普通はまとめてログ管理をするそうで、
ドキュメントルートには置かないので気にする必要はないけど、
それ以外に置く場合はhtaccessを使わないと、

URLを直接叩かれるとlogファイルを読まれてしまう。

なので、パーミッションの読み込み(呼び出し)に関しては
許可しない設定もあり。

 - PHP, エラー管理

  関連記事

メールサーバーを構築せずにGmailのSMPTを使ってPHPでメール送信

メールサーバーが立てられなかったり、無料サーバーのため使えなかったりといった場合 ...

短縮URL(リダイレクトページ)

<? /* 管理画面とあわせて使う。 short_url直下にこのphpを ...

PHPで日付の比較

以前に「締切日を設けて、今日の日付と比較して分岐させる」というもので 日付の比較 ...

PHPでPOST送信する際に多次元配列も送る

PHPでPOST送信する際に多次元配列も送りたかった。ただ普通に送ろうとするとO ...

PHPで「Unable to allocate~」とエラー

PHPで「Unable to allocate memory for pool」 ...

phpMyAdminより高速で軽量なAdminerが凄い

MySQLをGUIで管理できるphpMyAdmin。特に不満はないんだけど、もっ ...

PHPで文字のあいまい検索(文字のゆれ)

googleとかで検索する際に、ちょっと間違えて 入力してしまっても「もしかして ...

MySQLiでINSERT文

MySQLiでINSERT文 ■ソース $mysqli = new mysqli ...

PHPでステータスコードを取得する方法

サーバーの死活監視でUptimeRobotを使っていたけど、どうも正常に監視して ...

PHPで月末日を取得

PHPファイルを触っている際に日付処理時、 date('t')というものがあって ...