$_GETにより取得したURLの値が次ページのURLのパラメータの値として渡らない。
あるページのURLのパラメータを$_GET
で取得して、その値を次ページのURLのパラメータに使用する設定にしたいと考え、以下の様に①php内でパラメータの値を$_GET
で取得した場合と、②php内でパラメータの値を手入力した場合で試しました。
①、②ともphpのvar_dump($product_id);
でhtmlで表示される結果はstring(4) "1434"なのですが、次ページに推移した際に②ではURLのパラメータに値が表示されるのに対して、①は表示されません。
なぜなのでしょうか。①の$_GET['product_id']
で取得した値がhtmlではstring(4) "1434"と表示されているものの、②の手入力のものとは違い、実際は空だからなのでしょうか。
次ページに推移し、URLのパラメータを設定するプログラムはこの$product_id
を使用いたしますが、②が機能している以上、今回の問題に関係していないので省略致します。
①も②の様に推移先URLのパラメータでproduct_id
の値を表示させたいのですが、解決策、打開策などご教授頂けませんでしょうか。
①php内でパラメータの値を$_GET
で取得した場合
元のURL
www.example.com/cart/?product_id=1434
phpファイル内
$product_id = $_GET['product_id'];
var_dump($product_id);
htmlの表示:string(4) "1434"
推移したURL
www.example.com/shopping/?product_id
②php内でパラメータの値を手入力した場合
元のURL
www.example.com/cart/?product_id=1434
phpファイル内
$product_id = '1434';
var_dump($product_id);
htmlの表示:string(4) "1434"
推移したURL
www.example.com/shopping/?product_id=1434