結論: ブラウザ判定のロジックを入れ込むことなく、 複数のブラウザにてダウンロードファイルの文字化けを避けたい場合は、 レスポンスヘッダに Content-Disposition: attachment; filename="ファイル名"; filename*=UTF-8''URLエンコーディングされたファイル名
SELECT文の小数点の乗算で変な挙動になってつまづいたのでメモ。 バージョン:mysql Ver 14.14 Distrib 5.6.23, for linux-glibc2.5 (x86_64) using EditLine wrapper テーブル CREATE TABLE hoge (id varchar(5), group_id varchar(5), value double); INSERT INTO hoge (id, group_id, value) VALUES ('A1', 'A', 0.0001234567); INSERT INTO hoge (id, group_id, value) VALUES ('A1', 'A', 0.0001111111); INSERT INTO hoge (id, group_id, value) VALUES ('A1', 'B'
一年くらい前から git を使い始め、ここ半年くらいは毎日の開発に git を使っています。昨日 git stash という機能を使っている時に失敗してしまい、何人かの方にアドバイスいただくことによって無事回復することが出来たので、感謝の印として、そして運悪く同じ問題に遭遇してしまった人たち(私もまたやるかも)へのメモとして記しておきます。 御託はいいから、早く回復法を知りたい人のためのまとめ $ git fsck | awk '/dangling commit/ {print $3}' 候補の sha1 がいくつか出てくる(長く開発していると、結構多く候補が出てきます) $ git show --summary 候補のsha1 一つ一つの sha1 の内容を確認 $ git cherry-pick -n -m1 見つけたsha1 いきさつ 私の作業のやりかたでは、 タスク毎にブランチを切
CakePHPのAuthコンポーネントをログイン認証に用いたサイトで発生しました。 調査してみると以下のフローでセッション切れが発生していたことがわかりました。 ①サイトにログインする ②サイト内のリンクから別ドメインのサイトを別ウィンドウで開く ③元ウィンドウのログインセッションが切れる どうも別ドメインのサイトを開いた時にログインセッションを切断している様な動きです。 対策として/app/config/core.php内のSession.checkAgentをfalseに設定しました。 (変更前)Configure::write('Session.checkAgent',true); ↓ (変更後)Configure::write('Session.checkAgent',false); ※Security.levelはlowに設定しています。 CakePHPサイトのマニュアルによると
Git は少ない数のシンプルだが強力なアイデアで成り立っています。 それらを理解しなくても git を利用することはできますが、 理解することで git をより直感的に理解できます。 最も重要なコンセプトである オブジェクトデータベース と 索引(index) の説明から開始しましょう、 既に the section called “履歴の理解:コミット” で見てきたように、全てのコミットは 40桁の "オブジェクト名" で格納されています。実際、プロジェクトの履歴を 表現するのに必要な全ての情報は、そのような名前のオブジェクトとして格納されています。 それぞれの名前はオブジェクト内容の SHA-1 ハッシュによって 計算されています。SHA-1ハッシュは暗号学的ハッシュ関数です。 それはつまり、同じ名前を持つ2つの異なるオブジェクトを見つけるのが 不可能であることを意味します。このことは
For full functionality of this site it is necessary to enable JavaScript. Here are the instructions how to enable JavaScript in your web browser.
今までPHPでプログラミングを行ってきて、頻繁に出会ったエラーメッセージとその対策を説明したいと思います。 Warning: session_start(): Cannot send session cache limiter - headers already sent in エラーが発生しているPHPファイルのフルパス on line エラーが発生している行 セッションIDの格納にCookieを利用する設定となっており、 session_start関数の呼び出しより先にブラウザに対してレスポンスが出力されている場合、上記エラーが発生します。 これは、cookieを利用する為にHTTP通信のレスポンスヘッダにSet-Cookieヘッダを埋め込むのですが、 既にブラウザに対してレスポンスが出力されている為、 レスポンスヘッダを変更する事が出来ない状態(HTTP通信の仕様)になってしまい、エ
日本語が入った正規表現を使って検索、置換を行うには preg_match , preg_replace を使う その際文字化けが起こってしまうことが多いが、原因は【/】をエスケープし忘れている ところにあると思うので、【/】はきちんとエスケープしよう。 1 日本語エンコードを指定する mb_regex_encoding('UTF-8'); // もしくは SJIS, EUC-JP 2 検索する文字( $find_text )と区切り文字(/)はあらかじめエスケープしておく $find_text = preg_quote($find_text, '/'); 3 正規表現を使って置換を行う $string=preg_replace("/($find_text)/", "置換する文字列",$string ); これで文字化けもおこらないと思います。 エンコードUTF-8で日本語を使う場合は u
※本サイトではアフィリエイト広告を利用しています。記事内および商品リンクにはプロモーションが含まれる場合があります。 BOMありUTF-8の先頭データを削除する BOMありUTF-8ファイルを読み込んだ時に、何かと問題になる先頭BOMデータを削除する方法です。 Windowsのメモ帳にてUTF-8で保存した場合、BOMありUTF-8形式で保存されます。 UTF-8のファイル内の文字列読み込んで何らかの処理をする場合、BOMを含んだ状態で文字列を扱うと色々と問題が出てきます。 何か文字列処理で不具合が見つかったけど、原因がよくわからーん/(^o^)\ 突き詰めてみたらどうみてもBOMが原因です本当にありがとうございました。 って経験、ありませんか? BOMを削除しても問題ない場合は、文字列から事前に削除しておくのが無難でしょう。 /** * 文字列からBOMデータを削除する * * @par
PHP5.4を動かす際にPHP Fatal error: Call-time pass-by-reference has been removedと出たのでメモ Call-time pass-by-reference(関数呼び出しの際に参照渡しを行う)機能がなくなった PHP5.4からCall-time pass-by-reference(関数呼び出しの際に参照渡しを行う)機能がなくなったみたいです。 対処方法 参照渡しを値渡しにすればいいのです。 <?php /** *テスト */ $a = 1; $b = 2; function test(&$a, $b) { return true; } //test(&$a,$b);//これを実行するとエラーになる test($a, $b); //エラー回避になる 【&】を抜けばいいだけです。 実際はダメなのかもしれませんが動くのでこの対応でいい
CakePHP2.xで、Securityコンポーネントを使用する際は、Viewのフォームは全てFormヘルパーを使って記述する必要がある。 Secutiryコンポーネントをオンにすると以下の動作を行うようになる。 Formヘルパーによって動的に生成されたTokenがhidden要素としてフォームに自動追加される。 POSTされたフォームのTokenを確認して、問題があるとThe request has been black-holedとして処理され、$this->request->dataは空になる。 上記の動作を無効にするには、コントローラのbeforeFilter()に $this->Security->validatePost = false; を追加する。
CakePHP Advent Calendar 2010 に参加しています。 昨日の mon_sat さんからバトンを受け取ってこの記事が11日目。 さてタイトルのとおり CakePHP で Debug Level を 0 にしてるときだけエラーが発生する というよくわからないことが起きました。 結局は単なる実装ミスだったんだけど、 忘れないように書いておきます。 何が悩ましいのか CakePHP では Configure::write('debug', 0); としておくと本番モードになって エラーが出力されなくなりますね。 デフォルトで app/configure/core.php に書いてあるやつ。 だいたい開発中はデバッグレベルを1か2にするわけですけど、 その間は何の問題もなく動いてたのに 0にしたらいきなりエラーが出るという わけのわからない不具合が発生しました。 逆ならわかる
目次1 CentOS 7の場合1.1 変更前1.2 変更後1.1 SELinuxの状態確認1.2 補足2 CentOS 6.5の場合2.1 事前確認2.2 /etc/sysconfig/selinux の編集2.2.1 変更前 (/etc/sysconfig/selinux)2.2.2 変更後 (/etc/sysconfig/selinux)2.3 動作確認2.4 補足3 CentOS5でGUIで設定する場合3.1 注4 CentOS5 Centos6.5以前で設定ファイルを編集する場合4.1 /etc/selinux/configファイルの編集4.2 /etc/grab.conf ファイルの編集4.2.1 修正前4.2.2 修正後 SELunxの設定をします。 CentOS 7の場合 CentOS7ではSELinuxはデフォルトで有効の設定になっています。無効にする場合は /etc/sy
以前の記事で ・yum updateかけたら起動しなくなったからまだやるな! としていましたが、外部サーバーで同じ経験をしたら対処できるか?という不安もあるので、どうすれば起動するようになるのかを調べる事にした。 環境 ゲスト: CentOS 6.2 ホスト: MacBookAir MacOS 10.8 VM: Parallels Desktop 9 for mac スナップショットを作っておく まずはとにかく、今の正常な状態を保持するため Parallels Desktop の機能でスナップショットを撮っておきましょう。 これで何があっても今の状態に戻れます。安心安全無料。 普通にsudo yum updateしてみる しばらく待つ。 Complete! 表示されたので、再起動。 すると前回と同じく、真っ黒の画面下にゲージがあり、それが伸びきって右側に CentOS 6.2 の表記が白く
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
何か変なqueryをMySQLに投げてしまって 2012-05-26 18:23:21 Error: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`test`.`user_logs`, CONSTRAINT `user_logs_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`)) みたいな感じでPDOExceptionが発生した場合に、どんなSQLを実行したのかがわからなくて困ったので調べた。 debugモードであればqueriesLogに保存されてそれを覗けばわかるのだけど、本番だとqueriesLogには保存されないのでそれだと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く