さて、私はあなたの設定を複製し、$_POST 内の変数セットを取得できるたびに. 同様の質問でセッションが正しくキャプチャされていると述べたので、名前の修正も避けました。
namer 変数を undefined に設定するか、存在しない値を取得しようとすることで、エラーを再現できました。
変数 namer が設定されている限り送信できたので、いくつかのことを行う必要があります。
おそらくクライアント側とサーバー側で name 変数が設定されているかどうかを確認します。つまり、変数が未定義でないかどうかをテストするjavascriptで、または$ _POST ['namer']が設定されているかどうかを確認するphpです。
セッションが期限切れになる可能性があるため、存在しない値を取得しようとしています。これは、使用しているライブラリまたはセッションの作成時に宣言した設定に依存する可能性があります
どちらの場合も同じエラーが発生し、いくつかのロジックを実行することでこのエラーを回避できます。
サーバー側のチェック - PHP:
if(isset($_POST['namer'])){
echo $_POST['namer'];
}else{
echo "session capture unsuccessful";
}
クライアント側チェック - Javascript:
var namer = sessionStorage.getItem("namer");
if (typeof namer === "undefined")
console.log("your session is not set");
} else{
// you could place your ajax request here
// or you could set the namer variable to a default value
}
可能であれば、Web アプリケーションをローカルで開発してください。デバッグが容易であり、最終的な注意として、デバッグ目的では alert(yourError) よりも console.log(yourError) を使用する方が簡単な場合があります。