見出し画像

postした値が取得できないとき


フォームデータをポストしてPHP側で取得するということが突然できなくなりました。テスト環境から本番環境に移したときのことです。テスト環境では問題なく動いていたのに。

両環境ともPHPのバージョンは同じです。エラーもでておらず、ただただフォームから飛ばした$_postの値が取得できない

かなりはまって色々試したのですが、結論から言うと、フォームのactionに絶対パスを設定したのが原因でした!

<form method="post" action="<?php echo esc_url(home_url()); ?>" >

上記のように書いていたのを、下記のようにactionに相対パスを設定することで$_POSTの値が取得できるようになりました。

<form method="post" action="/">

絶対パスだと$_POSTの値が取れないというのは聞いたことがないですし、実際テスト環境では動いていたので原因はわかりません。

ただ本番環境のセキュリティがかなり高かったので、何かしらpostデータを弾くような設定がしてあったのかもしれません。

同じ現象にあった人は試してみてください。


この記事が気に入ったらサポートをしてみませんか?