※ ChatGPTを利用し、要約された質問です(原文:異なるページへ配列を渡したいのですが、うまくいきません。どうすればよい)
異なるページへ配列を渡す方法についての質問
このQ&Aのポイント
異なるページへ配列を渡す方法が分かりません。フォームの隠し項目で配列データを渡す方法を試しましたが、うまくいきませんでした。
現在、APIへアクセスを行い、simplexml_load_stringを使ってカテゴリー階層部分を取得し、配列に格納していますが、別ページへ丸まる渡す方法がわかりません。
質問者は単純に別のページに配列を渡したいだけであり、エンコードやデコードにこだわりはありません。どのようにすればよいでしょうか?
異なるページへ配列を渡したいのですが、うまくいきません。どうすればよい
異なるページへ配列を渡したいのですが、うまくいきません。どうすればよいでしょうか?
■現状
APIへアクセスを行い、
simplexml_load_stringを使って、
カテゴリー階層部分を取得して、配列$hitsへ格納しています。
$xml = simplexml_load_string (引数);
$hits = $xml->カテゴリー階層部分;
これを別ページへ丸まる渡す方法が分かりません。
ネットで検索したところ、
フォームの隠し項目で配列データを渡したい時、という項目があり、
自分がやりたいケースにあてはまるかなと思い試してみたのですが、うまくいきませんでした。
▽配列データをエンコード、デコードして送受信する - 覚え書き PHP Sample
http://antonsan.net/study/php/php013.php
■試してみた内容
▽渡す前のページ
<form action="**.php" method="get">
<input type="hidden" name="array_enc" value="<?php echo base64_encode(serialize($hits)) ?>">
▽渡した後のページ
print_r(unserialize(base64_decode(@$_GET["array_enc"])));
var_dump($hits);
▽画面でのエラー表示
Warning: unserialize() [function.unserialize]: Node no longer exists in **.php on line 5
SimpleXMLElement Object
Warning: print_r() [function.print-r]: Node no longer exists in **.php on line 5
( ) NULL
■
やりたいことは、別ページへ配列を渡したいだけなのですが、どうすればよいのでしょうか?
(特にエンコード、デコード等にこだわりはありません)
お礼
コードを完璧に書いていただいたおかげで、 hiddenで渡すやり方と、セッションを使うやり方と、 それぞれ、個別に、無事動作確認することができました!!! 正直、自力ではどうしても解決できず、 半ば諦めかけていたので、 今、とっても、嬉しい気分です!!! 最後になりましたが、 配列を渡す方法を教えてくださいなどという、 ピントのズレた質問に、ご回答&ご協力&アドバイスいただいたみなさん、 本当にありがとうございました!