アプリ版:「スタンプのみでお礼する」機能のリリースについて

既存のHTMLプログラムを管理することになりました。
xxxx.phpというファイルのなかで、
<form name="xxx_form" method="post" action="xxxx.php">
という感じで、xxxx.phpのなかで同名のファイルをactionに指定しているのですが、最初に開いたxxxx.phpと、actionで開いたxxxx.phpでは表示内容が異なっているのです。(具体的には、初めとaction後ではリストの内容等が更新されている。)
ソースを表示してみると、確かに異なっています(リスト内容の指定部分が異なっている)。しかし、アドレスは同じです。
この動作の仕組みが分かりません。
分かる方、ご指導よろしくお願いします。

A 回答 (3件)

#1です。



勘違いしているかもしれないので、補足です。

>ソースを表示してみると、確かに異なっています

これはサーバー上でソースを見ていませんか?
(ブラウザで右クリック→ソースを見る、など)
それならば、単にPHPが生成したHTMLを見ているだけで、もとのPHPを見ていることにはなりませんよ。

私が言ったのはもとのPHPファイルの記述のことです。

この回答への補足

おっしゃる通りです。確認してみます。

補足日時:2006/06/12 08:33
    • good
    • 0
この回答へのお礼

元のソース、見つかりました。
ありがとうございました。

お礼日時:2006/06/12 09:47

xxxx.php がリクエストされた時にフォームから送信されたデータを持っているかどうかで処理を分岐させています。

場合によっては、隠しフィールドに処理を分岐するためのパラメータをセットし、フォームの送信によって送られたパラメータの値によって、複数の処理に分岐させることもあります。これにより、入力画面の書き出し→確認画面の書き出し→メール送信といった異なった処理をxxxx.phpというひとつのプログラムでこなすことができます。プログラムの書き方は幾通りもありますので、この場で、この部分と指摘することはできませんが、コードを見ればわかります。おおむね「$_POST」と書かれている部分がフォームによってPOSTされたデータが格納されている配列になりますので、どのように処理されていくかを追ってみるとわかるかも知れません。if、または switch と書かれた部分が条件分岐のところです。また、フォームの隠しフィールドの名前や値なども追ってみるといいかも知れません。

この回答への補足

POSTや分岐のコードは無いようです。
どちらかといえば、同じファイル名で、フォームの値によって違うファイルを呼び出しているような感じです。現在、クライアント側のPCからチェックしている状態なので、一度サーバのファイル構成を調べてみます。

補足日時:2006/06/09 14:59
    • good
    • 0
この回答へのお礼

詳しく説明していただき、ありがとうございました。

お礼日時:2006/06/09 15:02

<form method="post" action="<?=$_SERVER['PHP_SELF']?>">



と、「isset」という関数を利用しているのでは?

この回答への補足

<?=$_SERVER['PHP_SELF']?>の部分は、直にファイル名です。
issetという関数は見当たりませんでした。

補足日時:2006/06/09 14:05
    • good
    • 0
この回答へのお礼

早速回答して頂き、ありがとうございます。

お礼日時:2006/06/09 14:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!