• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHP外部の変数を保持して足し算する方法)

PHP外部の変数を保持して足し算する方法

このQ&Aのポイント
  • PHP初心者の質問者が、診断テストを作成している際に、外部ファイルから受け取った変数を保持して足し算する方法を知りたいとのことです。
  • 質問文章は5つのファイルに分かれており、それぞれのファイルで外部変数を使用します。
  • 現在、質問者は外部変数の保持方法について理解できていないため、上書きされてしまっているようです。違うファイルで受け取った変数を保存していく方法を知りたいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

通るすがると申します。 ソース良く見たわけではないのですが、多分サーバー側(PHP)とクライアント側の仕組みを勘違い してませんか?PHPで生成したHTMLは出力オンリーで、HTMLを生成するだけで通信しているわ けではありません。 PHPの処理を一通り実行するとそのAPはは終了してしまします。 また、HTMLでPHPを起動した場合、新たにサーバー側でそのプログラムが起動され、新規にメモ リ-上に展開し動くことになります。ですので前に受け取った情報は初期状態となり情報を維持できま せん。もし、情報を維持したければセッション機能を使います。これはサーバーのメモリに一旦退避し て新たに受け取った情報をセッション機能を介して受け取りデータの引き渡しを行います。 この方法以外に、最初に起動したサーバープログラム(PHP)からHTMLを起動するとき、HTML側 に保持したい情報も一緒にコードとして生成し、HTML上でSBMIT発行時に、その情報をPHP側に 受け取る方法もあります。 ほかにも、クライアントへの情報保持方法としてクッキーを利用するという手もあります。 どのような方法で実施するかはインフラの条件などにより決定するかと思います。 少し文章では解りずらいかもしれません。キーワードとして、PHP、クッキー、セッションなどを組み合 わせて調査してみてください。    

potwell331
質問者

お礼

セッションで管理したらうまくいきました! ■最初のページにセッションを開始するものを書く // セッションの開始 session_start(); // セッション変数に値を代入 $_SESSION["count"] = 0; ■条件分岐のところで数値を足していく $_SESSION["count"] = $_SESSION["count"] + 1; ■セッションを維持するファイルには以下の行を追加 session_start(); ■セッションを終了する場合は以下の行を追加 session_start(); //セッション変数の初期化 $_SESSION = array(); //セッションファイルの削除 session_destroy(); これで <p>$_SESSION["count"]に代入した値は「<?php echo $_SESSION["count"] ?>」です。</p> ↑ ここのcountのところの数字を変化させていくことが出来ました! ありがとうございました!

関連するQ&A

専門家に質問してみよう