※ ChatGPTを利用し、要約された質問です(原文:ezwebのformタグの動きについて)
ezwebのformタグの動きについて
このQ&Aのポイント
ezwebのformタグの動きについてについて調査しています。PCやi-mobileでは正常に動作しているが、au携帯では予期しない挙動が発生します。
フォーム関係のトラブルはHTMLの記述に問題がある場合が多いことが分かりました。auでのフォーム作成時に注意すべき点は具体的にどこなのか知りたいです。
プロフィール入力ページでのフォームの送信後、外部テキストファイルに書き込みがされない問題も発生しています。
よろしくお願いします。
現在、Web上に公開した社員のプロフィールを、社員自身が携帯電話から更新することができるというシステムを作成中です。
(1)「認証ページ」でID・パスワードを入力
(2)認証がOKならば、「プロフィール入力ページ」へ遷移
(3)プロフィールを入力・修正してボタンを押す→外部ファイルへ書き込み
(4)「更新の完了報告ページ」へ遷移
というものです。現在、PCとi-modeでは、意図したとおりの動作が得られることを確認しています。
しかし、au携帯でテストしたところ、
(3)で、プロフィールを入力・修正してボタンを押すと、(4)の動作が無く、「認証ページ」へ戻ってしまいます。
また、「プロフィール入力ページ」でボタンを押すことで、外部ファイルに記録しているデータが書き変わるはずなのですが、ファイルにアクセスする前に「認証ページ」へ戻っているようです。
そこでご質問したいのですが、
PCやi-modoと異なるこの挙動には、どのような原因が考えられるでしょうか?
今回、PHPではなくHTMLのカテゴリに投稿させていただいたのは、htmlの記述に問題があると考えたからです。
どこかのサイトで、auのフォーム関係のトラブルにはhtmlの記述等に問題がある場合が多いらしいという文面を見たことがあったので・・・しかし、auでhtmlフォームの記述をする際に注意すべき点は具体的にどこなのでしょうか?(そのサイトには具体的なことは書かれていませんでした)
ご回答、参考URL、予想、推測など、何でも良いのでヒントをいただければと思います。
ためしてみたこと:
(1).「プロフィール入力ページ」へ直アクセスしたユーザーを認証ページへheader(Location:---)で飛ばすようにしていたので、ためしにこの一文をコメントアウトして動作確認しました。が、やはり認証ページへ戻ってしまいます。
(2).(1)の状態(header locationをコメントアウト)でも「認証ページ」へ戻ってしまうのは、コメントアウト前のページのキャッシュが残っているためかと考え、他の機種でテストを行いましたが、結果は同じでした。
(3).「プロフィール入力ページ」でボタンを押し、認証ページへ戻った場合、プロフィールのデータは書き換えられていませんでした(外部テキストファイルに記録しています)
以下はプロフィール入力ページのソースです。
<?php
session_start();
(中略)
if (!isset($_SESSION["SESSVAR"])) {
header (認証ページのURL); //←これをコメントアウトしても動作内容に変化はありませんでした
}
$action = $_POST['action'];
if ($action == "post"){
(中略)
$fh = fopen($プロフィール保存用ファイル, "wb+");
fwrite($fh, $入力されたプロフィール);
fclose($fh);
header (更新の完了報告ページ);
}
<form action="<?php Print $_SERVER['PHP_SELF'] . '?' . SID; ?>" method="post" enctype="application/x-www-form-urlencoded">
<input --->
名前:<br>
<input --->
<input --->
<input --->
<input ---> <br>
生年月日:<br>
<input --->
<input --->
<input --->
<br>
趣味:<br>
<input ---><br>
特技:<br>
<input ---><br>
仕事に対するこだわり・信念:<br>
<<input ---><br>
お客様へ一言:<br>
<textarea></textarea><br>
<input type="submit" name="submit" id="submit" value="送信">
ソースの掲示が中途半端で大変失礼いたします。
時間は残されているのですが、実機が手元に無く、動作テストが満足にできないため、すこし焦っております・・・。よろしくお願いします。
お礼
ご回答ありがとうございました。お返事が遅れまして申し訳ありません。 aidesさまの意見もふまえ、もう一度ソースを見渡してみましたが、 解決には至らなかったため、auに関しては 実機テストが充分に行える環境が手に入るまで保留とすることにしました。 質問を一旦締めさせていただきます。どうもありがとうございました。