- ベストアンサー
再帰処理で変数が戻ってこない?
- 再帰処理で変数が正しく渡されない現象が発生しています。
- プログラム内の$viewdataの値が再帰処理時にうまく受け渡されていないようです。
- 具体的には、$actionのregistは受け渡されているが、$viewdataは受け渡されない問題が発生しています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
再起処理っていうのが何のことかよくわかりませんが [---UP---]ボタンを押した際のことと想像してます。 if(!isset($action)){$action=$_POST['action'];} if(!isset($viewdata)){$viewdata=$_POST['viewdata'];} ↑コレがあるということは初回表示時にはログデータファイルを読み取るということをして、 [---UP---]ボタンが押されたときには読み取ったログデータを表示する、 というようなことをしようかと考えているのかなと思ってますが 提示されたソースだけでは[---UP---]ボタンを押した際に actionは"regist"がPOSTされますが(input type="hidden"で設定されているから当たり前) ログファイルデータはただ単に文字列が書き出されているだけなのでもちろんPOSTされません。 viewdataもactionと同じようにPOSTしてください。 …やりたいことは上のようなことじゃない、という場合はごめんなさい。
その他の回答 (2)
- bm_hiro
- ベストアンサー率51% (200/388)
とりあえず、俺も ちゃんと 再起処理について説明はできないのですが「再起処理」という言葉を間違えて使っているような気はしました。 あと、このソースだけなのだとしたら 冒頭にある isset 三行の存在理由がわかりません。 最初から セットされてない変数なのが分かっているのに、確認する意味が…? あと、<INPUT TYPE=FILE>使ってるわけでもなさそうなのに、<FORM ENCTYPE="multipart/form-data"> …? 何か元にあるのを改変して勉強中といった所だとは思うのですが、なんか、ツッコミ所 満載で…f(^^;)
お礼
回答いただきありがとうございます。 指摘されたように、すこしずつ勉強中なのでいまいちよくわかってないとこがあります。指摘頂いたとこを調べてみようと思います、ご迷惑をおかけします
- duron
- ベストアンサー率77% (73/94)
viewdataはどこでPOSTされてますか?
補足
回答頂きありがとうございます。 今のプログラム文以外の内容がどっかにいるということですか? このプログラムでも$actionが渡せてるように、今までは問題なかったのですが・・
お礼
回答頂きありがとうございます。 勉強不足な質問にも関わらず、的確な回答頂き感謝しております。 教えていただいた通りポストしたら解決しました。