• PHPでHTMLブラウザに受け渡す場合に改行が空白になる

    ■事象 PHPでSmarty変数に受け渡す場合に改行が空白になる ■原因 PHPスクリプト中で改行「"\n"」を入れてもブラウザでの表示結果には反映されない。 ブラウザはHTML文書を解釈して表示するアプリケーションのためブラウザ上で改行する場合は、HTMLの改行タグ「<BR>」を入れないといけない。 ■対応 ※Smartyでの書き方 ・正規表現で置換 ({"/\n/"|preg_replace:

  • logrotateとSIGHUPによるApacheの異常終了

    logrotateとは ログ肥大化を防ぐために不要な過去のログを圧縮しディスクのサイズを確保する 再起動後Apacheダウン不具合 あるサーバーで、ログローテーション後に再起動がかかるはずが、正常に再起動せず Apacheがダウンしたままだった 原因の一因はバグ?! 正常に起動しない一因として、ログローテーション後に「reload」で再起動設定。 reloadはSIGHUPというをシグナルを発行す

  • URLのパラメータに"+"文字がある場合空白になる

    ■事象 URLのパラメータに"+"文字がある場合空白になってエラーになっていた 作業的にはログインIDとPASSを暗号化したURL等を確認していた 可逆暗号化のための準備 <暗号化方法> base64でエンコード→mcrypt_genericで暗号化→base64でエンコード  <復号化方法>  base64でデコード→mdecrypt_genericで復号化→base64でデコード ■空だよの下

  • 暗号化と複合化

    復号化出来かつ安易に解読されない手法 ハッシュの作り方もMD5やSHAだけでなく、phpではpassword_hashというハッシュ化させてパスワードを返す関数がある。 本来、不可逆的なものだが、レインボーテーブルを使用したレインボー攻撃という方法によって、推測されうる平文とハッシュ値をテーブル化するため、解読自体には時間がかかるようですが、短時間で解読されてしまうようだ。 メモ 可逆的暗号化の方

  • PHPでのHTML フォーム (GET と POST)

    PHPでのデーター送信方法 HTTP通信というプロトコルでWebサーバーとクライアント(Webブラウザなど)がデータを送受信するときに使う。 GET form要素(タグ)のmethod属性がGET。 URLの末尾に「?」をつけ、「パラメーター名="値"」という形式でデータを送る。 URL自体は誰からでも閲覧可能。 データ量が制限されており、Internet ExplorerではURLに使用できる文

  • Notice: Undefined variable:エラー

    phpで頻繁に生じやすいエラー ※Noticeが発生するだけで処理速度が大幅に低下するので注意 下記の場合、$item_list が未定義のためエラーが生じる Notice: Undefined variable: item_list in YYY.php on line 6 ■エラー内容  定義していない変数を使用した時に発生するエラー ■発生現象例 foreach ($pass as $key