1

ユーザーがフォームの送信ボタンをクリックした後にアラートまたはメッセージを表示するにはどうすればよいですか?

送信ボタンがクリックされた後にページが読み込まれたときにアラートを表示したい。

送信フォームがクリックされると、別の php ページに移動し、データベースが更新され、フォーム ページ自体にリダイレクトされます。PHPでやっています。データを投稿し、フォーム ページをチェックインして、非表示のメッセージを表示する方法はありますか?

header('Location: http://www.xxxxxx.co.uk/NottTest/editqr.php');

これは DB を更新した後のリダイレクト リンクです。ここでメッセージを解析できますか?

これは、データベースが更新されるページです..

<body>

<p>
 <?php $sltdtpst= $_POST["qrtopic"]; ?>
 <?php $selctsm= $_POST["qrsubmenu"]; ?>
 <?php $selcttxt= $_POST["text12"]; ?>

 <?php
$link = mysql_connect('www.xxxxx.co.uk', 'xxxxxx', 'xxxx');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}

mysql_select_db("web3fffasd", $link);

 $update = "UPDATE qr_table SET $selctsm = '$selcttxt' WHERE id_qr= $sltdtpst";

  mysql_query($update, $link);

mysql_close();


header('Location: http://www.xxxxxx.co.uk/NottTest/editqr.php');

?>


</p>

</body>

したがって、データベースを更新した後、非表示がフォームページのここに表示されるはずです

<form name="updateqrnew" form action="edider1.php" onsubmit="return validateForm()" method="post">

    <div class="form_description">
            Update Contents for QR below
</div>                      
            <ul >

                    <li id="li_2" >
        <label class="description" for="element_2">Quick refresher topics </label>
        <div>
        <select class="element select medium" id="qrtopic" name="qrtopic"> 
            <option value="" selected="selected"></option>
<option value="1">Anxiety</option>

        </select>
        </div> 
        </li>       <li id="li_3" >
        <label class="description" for="element_3">Submenu </label>
        <div>
        <select class="element select medium" id="qrsubmenu" name="qrsubmenu"> 
            <option value="" selected="selected"></option>
<option value="start_of">Starting off</option>


        </select>
        </div> 
        </li>       <li id="li_4" >
        <label class="description" for="element_4">Enter the article below</label>
        <div>
            <textarea id="text12" name="text12" class="element textarea medium"></textarea> 
        </div> 
        </li>

                    <li class="buttons">
                <input type="hidden" name="form_id" value="431595" />

                <input id="saveForm" class="button_text" type="submit" name="submit" value="Update" />
        </li>
            </ul>
    </form>
4

1 に答える 1

1

私がこれを理解しているかどうか見てみましょう

  1. ユーザーが送信ボタンをクリックすると、
  2. アクションスクリプトがそれを処理し、次に
  3. 新しいスクリプトにリダイレクトし、

更新が機能したことをユーザーに通知したいのですが、それでよろしいですか?

この場合、アクション スクリプトからリダイレクト スクリプトに結果コードを渡すことを確認する必要があります。その後、リダイレクト スクリプトは、渡された結果コードを検索して、適切なメッセージをユーザーに送信できます。(必ずしもこのシナリオでは、ポップアップである必要はありません。) 結果コードの受け渡しは、クエリ文字列の使用、Cookie の使用、セッションの使用など、いくつかの方法で行うことができます。1 つ目は簡単ですが、URL が少し複雑になります。2 つ目はかなり非推奨です。3 番目の方法は、これを行うためのより一般的に受け入れられている方法ですが、これがセッションを必要とする唯一の場所である場合、アプリケーションにとっておそらくやり過ぎです。

クエリ文字列を使用すると、リダイレクトは次のようになります。

header('Location: http://www.xxxxxx.co.uk/NottTest/editqr.php?r=1');

たとえば、1 は成功のコードにすることができます。また、表示したいエラーがあった場合は他のコードを指定することもできます。単なるコード以外の情報が必要な場合は、それをクエリ文字列に渡すこともできます。 . これによりアプリケーションのセキュリティ上の問題が発生することに注意してください。そのため、アプリケーションで何かが発生したことを意味するクエリ文字列を使用してリダイレクト スクリプトを直接呼び出すだけの場合でも、コードが正しく動作することを確認する必要があります。そのため、これを行うのが最善の方法ではありません。

于 2012-06-17T09:00:09.230 に答える