• 締切済み

PHPから別なPHPへ移動(?)する方法

実現する命令ごとにPHPのファイルを分けて作りました。 A.phpで画面表示して命令によりファイ路を操作するB.php,C.phpを実行。 処理完了後にA.phpに戻るようにしようと思っています。 しかし、B.phpとC.phpからA.phpを表示させる(戻る)方法がわからずにいます。 echo fopen('A.php','r'); でいけるかな?と思っていましたがうまくいきませんでした。 よろしくお願いします。

  • muuuuu
  • お礼率75% (101/133)
  • PHP
  • 回答数2
  • ありがとう数3

みんなの回答

  • Zodiac
  • ベストアンサー率37% (10/27)
回答No.2

A.phpでフォームに入力して送信、B.phpにデータを渡してファイル操作、完了後にA.phpに戻る。 以上の動作であれば、B.phpの最後に header('A.php'); を記述してみてはいかがでしょうか?

muuuuu
質問者

お礼

回答ありがとうございます。 headerはうまく使うと便利そうですね。 Location:を設定したりなど、いろいろ条件がいりそうですね。 今回は利用しませんでしたが、機会があれば試してみたいと思います。 PHPをうまく使いこなせるようにがんばります。

  • coco1
  • ベストアンサー率25% (323/1260)
回答No.1

require,require once,include。 そもそも、そういう構造にする必然性があったのでしょうか。

muuuuu
質問者

お礼

回答ありがとうございます。 構造を対応させることで解決しました。 最初の構想段階の詰めが甘かったです。

関連するQ&A

  • JavaScriptとphpでできますか?

    お世話になります。 ずーっと考えているのですが、実現方法及び、実現できるのかどうか、 で悩んでいます。 アドバイスをお願いいたします。 Aさんが、あるサイトのボタンクリックすると、Bさんの待ち受け画面htmlにつながります。 (ここまでは某APIにて実現しています(電話)) その際に、追加でAさんのURLをBさんのサイトに表示させたいのです。 方法として、Aさんがボタンクリックしたときに、JavaScriptでURLを取得し、 POSTデータにして、ajax通信でBさんのサイトにあるphpを実行。 でも、phpでURLデータは取得できるとして、その後、どうやってBさんのhtmlに出力させるの(既にhtmlは表示されているし)? Bさんhtmlの中の表示させたい<div>などに <?php echo "{$url}"; ?>などできる? もし出来たとして、その場合、Aさんは(ソースコードレベルで)どうやってBさんにデータを渡すの? phpを実行させるの? phpの名前は? Aさん、Bさんのhtmlは同一Webサーバーです。 Bさんのhtmlは最初から表示されています。 考えても、考えても 出来そうで出来ない。。。 こんなことは出来ないのでしょうか? どなたかアドバイスをお願いいたします。

    • ベストアンサー
    • PHP
  • PHPから別のHTML(PHP)へリンクさせたい

    次のような処理を考えています。 FormでSubmitされた内容をA.PHPで処理を行います。 A.PHPでは処理結果によって次の2つのケースを行う。 ケース1:B.PHPを実行する。 ケース2:X.HTMLを実行する。 (A.PHPはケース1又はケース2を実行後終了する。) _____________________________ A.PHPでのB.PHP又はX.HTMLへ処理を引き継ぐ記述は どのような構文になるのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • phpのパス指定

    初めてphpを触っています。 いくつかの処理を外部ファイルにしたいのですが パスの指定が悪いのか、同じ階層に置いたり、いろいろ試してもfatal error ばかりです。 どこが悪いのか、教えていただけないでしょうか? サンプルとして、moto.phpのなかのincludeフォルダー内の外部ファイル:func.phpを実行することとします。 moto.php <?php require "./include/func.php"); $a = 2; $b = 1; $c = $a - $b * $a; echo return_word($a); echo "<br>"; //改行 echo return_word($b); echo "<br>"; //改行 echo return_word($c); ?> func.php <? php function return_word ( $data ){ if ( $a==1){ return "a"; }else if ($a==2){ return "b"; }else{ return "c"; } } ?> コマンドラインから php moto.php を実行すると <? php function return_word ( $data ){ if ( $a==1){ return "a"; }else if ($a==2){ return "b"; }else{ return "c"; } } ?> Fatal error: Call to undefined function return_word() in C:\xxxxxx\php\moto.php on line 9 となってしまいます。 外部ファイルは見えているようなのに、どうして関数がundefined になってしまうのでしょうか? phpの基本的なことなのかもしれませんが よろしくアドバイスお願いできればと思います。

    • ベストアンサー
    • PHP
  • PHPで外部プログラムのバックグラウンド処理(Windows)

    よろしくお願いします。 PHPのバージョン4でWindowsです。 現在***.exeをsystem()で実行しています。 この***.exeの処理が長い時で、10分位かかってしまうので、バックグラウウンドで処理をしたいと考えています。 コマンドプロンプトで >start ***.exe ~ を実行したところ、うまいことバックグラウンドで処理できました。 しかし、system()で上記のコードを実行したら一瞬黒い画面が出るだけで***.exeが実行されませんでした。 なにがだめなのか全然見当もつきません… 実現できればどんな方法でもかまわないので、 次の方法も試しました。 1. a.phpでsystem(">b.php") b.phpを呼び出し b.phpでsystem(">***.exe")を実行 結果:***.exeは実行されるのですがバックグラウンドで処理されない。 2. コマンドプロンプトでIEを開いてa.phpにアクセス a.phpでjavascript window.openでb.phpをオープン b.phpでsystem(">***.exe")を実行 b.phpをwindow.closeで閉じる 処理は出来たのですが、a.phpが残ってしまう…(消せない、消し方がわからない) a.phpが消せればこの方法でもいいのですが… とにかく実現できればいいのですが… わかる方がいたら教えてくださいお願いします。

    • 締切済み
    • PHP
  • echo printのパラメータに変数を埋め込む時の問題について

     初歩的な質問ですがPHPでecho print 命令を実行する問題について お聞きします。 $a=10; $b=20; $c=$a+$b; echo "答えは、$cです。"; //(1) echo "答えは、$c です。"; //(2) echo "答えは、".$c."です。"; //(3) を実行すると  (1)は、答えは、まで表示してそれ以降が表示しません。  (2)は、$cに後ろに半角スペースを入れた場合で   「答えは、30 です。」と表示しますが、半角スペースが   入ってしまいます。  (3)は、特に問題なく「答えは、30です。」と表示します。  (1)のように書いた場合、うまく表示されない原因がわかりません。 よろしくお願いいたします。 テスト環境は、 OS:WindowsXP PHP5 Apache2.2 php.iniの文字コードは、UTF-8に設定しています。 ソースコードは、UTF-8で保存しています。

    • ベストアンサー
    • PHP
  • phpのECHOが出力されない:wordpress

    A B C "text" というJSONデータのCを画面に出したい時、 echo $obj['A']['B']['C']; もしくは echo $obj->A->B->C; という文をphpの中に書き込んだのですが、 echo ”Halloworld”とかは出るのに、変数になると出ません。 ちなみにfunction.phpでショートコードから呼び出すファイルに記述しています。 何が間違っているのでしょうか。

    • 締切済み
    • PHP
  • PHPで受け取ったパラメータを別のPHPに移す

    フォーム用HTMLから受け取ったパラメータを処理用PHPで処理したあと、表示用PHPにパラメータを持たせたまま処理を移したいと考えております。 たとえば、form.htmlで受け取ったパラメータをa.phpで処理し、表示用のb.phpに移すには、どのような方法をとるのが効率的なのでしょうか? smartyなどのテンプレートエンジンを使わない形で考えております。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPスクリプト実行後に別URLを表示したい

    HTML、PHPともに初心者です。 FORMより入力した内容を処理するPHPスクリプト実行後に、先のFORM画面に自動で戻りたいのですが、どのような方法を使えば実現できるのでしょうか? 現在、 ABCD.htmlのFORM入力後、SUBMITボタンでABCD.PHPを 動かしています。 このABCD.PHPの処理実行後ABCD.htmlを表示したいのですが、可能でしょうか? ご指導いただけると助かります。

    • ベストアンサー
    • PHP
  • PHPの出力した内容をまるごとキャッシュしたい

    PHPで出力した内容をキャッシュして利用したいのですが、どのようにすればいいのでしょうか。 例えば $a = 1; $b = 2; $c = $a + $b; echo '<div>'.$c.'</div>'; という結果の「<div>3</div>」をキャッシュして次回から表示したいのです。 (PEAR::Cache_Liteで実現できないかな、と思っているのですが・・・。) よろしくお願いします。

    • 締切済み
    • PHP
  • PHPのexecで別PHPの実行

    「エックスサーバー」というレンタルサーバーを使用しています。 PHPファイルの中で[exec()]関数を用いて、別ファイルのPHPを実行させたいと考えております。  ・PHPバージョン:5.3.3  ・ドメイン:XXXXX.xsrv.jp 以下の内容(ProgramA)を実行すると、 [exec()]関数で呼び出している処理(ProgramB)が実行されていないように思います。 どのように修正したら、(ProgramB)が実行されるのでしょうか? どうかご教示くださいませ。 ---ProgramA.php (起動する側)---------------------- <?php exec('/usr/bin/php5.3 /home/XXXXX(ユーザー名)/xsrv.jp(ドメイン)/public_html/AAA/BBB/ProgramB.php'); echo "test!"; ?> ※ProgramA.phpを実行すると、ブラウザには「test!」という文字列が表示されます。 ※ProgramA.phpのパーミッションは755に設定されています。 ---ProgramB.php (起動される側)---------------------- <?php echo"HelloWorld"; ?> ※ProgramB.phpのパーミッションは755に設定されています。

    • 締切済み
    • PHP

専門家に質問してみよう