phpのオープンソース(osCommerce)を改変中なのですが、改変の結果ブラウザのクッキーが変更できなくなってしまいました。どういう原因が考えられるかお知恵をお貸しください。

ズバリ特定されて方には400pt差し上げます。

該当部分のソースは以下の通りです。
setcookie("shop_language", 'ja', (time()+30*86400), '/', $_SERVER['HTTP_HOST']);

'ja'に変わるはずが変わりません。
直前まで処理が流れてるのは確認できています。
全く同じソースでテスト環境では上手く行っております。ですので余計にわかりません。
よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/09/20 20:52:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:taknt No.2

回答回数13539ベストアンサー獲得回数1198

ポイント250pt

とりあえず テストパターンとして

クッキーを別の名前にしてみる。→ "shop_language"

書き込む内容の変更 → 'ja'を変えてみる。

時間を変える。 → time()+360 とかにしてみる。

パスを変える。 → '/'

ドメインを変える。 → 変数じゃなく 値を直接セットしてみる。

id:hhashimo

度々ありがとうございます。

丁度クッキー名を変えてみたところでした。

クッキーを別名にしたところ、別名のクッキーには指定した内容で書き込まれました。

同じクッキー名だと書き変わらないとはどういうことでしょう???


追記です。

クッキー名を変更した後は、同じクッキー名でも値を指定通りに変えられるようです。ですので、変更後のクッキー名に全て変更すれば、一応対策にはなりませうが、理由がわからないのは釈然としませんし、改変箇所が増えるため出来れば避けたいと思っています。


追記2です。

まだ確定ではないですが、

上記コードでは正常に書き換わっているが、後のコードで再び書き換わって元に戻っていたという単純エラーが原因のようです。

いったん終了します。ありがとうございました。

2011/09/20 20:50:54

その他の回答2件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント200pt

ブラウザの設定を「セキュリティーレベル:小」に変えないとダメとか?

id:hhashimo

テスト環境も同じブラウザで見てますが、正常動作してます。セキュリティーレベルは変えてません。

また何かありましたらよろしくお願いします。

2011/09/20 20:18:23
id:taknt No.2

回答回数13539ベストアンサー獲得回数1198ここでベストアンサー

ポイント250pt

とりあえず テストパターンとして

クッキーを別の名前にしてみる。→ "shop_language"

書き込む内容の変更 → 'ja'を変えてみる。

時間を変える。 → time()+360 とかにしてみる。

パスを変える。 → '/'

ドメインを変える。 → 変数じゃなく 値を直接セットしてみる。

id:hhashimo

度々ありがとうございます。

丁度クッキー名を変えてみたところでした。

クッキーを別名にしたところ、別名のクッキーには指定した内容で書き込まれました。

同じクッキー名だと書き変わらないとはどういうことでしょう???


追記です。

クッキー名を変更した後は、同じクッキー名でも値を指定通りに変えられるようです。ですので、変更後のクッキー名に全て変更すれば、一応対策にはなりませうが、理由がわからないのは釈然としませんし、改変箇所が増えるため出来れば避けたいと思っています。


追記2です。

まだ確定ではないですが、

上記コードでは正常に書き換わっているが、後のコードで再び書き換わって元に戻っていたという単純エラーが原因のようです。

いったん終了します。ありがとうございました。

2011/09/20 20:50:54
id:Jupiter2100 No.3

回答回数444ベストアンサー獲得回数74

ポイント50pt

セキュア属性付きのCookieになっており、httpアクセスで変更しようとしていませんか?

セキュア属性付きのCookieはhttpからは変更できません。httpsに戻してアクセスし直してみてください。

以上、ご確認になってみてください。

id:hhashimo

まだ確定ではないですが、上記コードでは正常に書き換わっているが、後のコードで再び書き換わって元に戻っていたという単純エラーが原因のようです。

いったん終了します。ありがとうございました。

2011/09/20 20:51:14
  • id:hhashimo
    最終変更日時は変更されているので、一応クッキーは書き換わってるようなのですが、肝心の部分が書き換わらないようです。
  • id:hhashimo
    ダメ元でクッキーを削除してみましたが、やはり変わりません。(テスト環境では上手く行きます。)テスト環境はサーバーのアドレスが違うだけです。(確認しているブラウザは一緒)
  • id:hhashimo
    クッキー名を変更した後は、同じクッキー名でも値を指定通りに変えられるようです。
    ですので、変更後のクッキー名に全て変更すれば、一応対策にはなりますが、理由がわからないのは釈然としませんし、改変箇所が増えるため出来れば避けたいと思っています。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません