-5

私はこのフォームを持っています

あなたのメール受信者の

メール

件名

メッセージ

このデータを送信して別のページに移動するにはどうすればよいですか (タグ付けされた言語のいずれかを使用)。助けてください。

4

4 に答える 4

5

あなたの質問が正しければ、あなたの答えは次のようになります。

送信ボタンは次のようにする必要があります。

<form method="POST" action="file.php">
    <!-- Whatever data you want to submit -->
    <input type="submit" value="Submit">
</form>

また、PHP file.php は次のようにする必要があります。

<?php
   if(isset($_POST['submit']))
   {
    //Do all the submission part or storing in DB work and all here
    header('Location: whateverpath.php');
   }
?>

これがあなたが望んでいたものかどうか教えてください

于 2013-02-03T05:30:10.873 に答える
1

PHPのみを使用して作業を行っている場合は、次のコードを使用して別のページにリダイレクトします。

header('Refresh: 5; URL= navigated.php'); 

ここで、5はリダイレクトする更新タイマーであり、URLは行きたい場所を定義します。このヘッダー関数の前にechoステートメントを記述しないでください。

javascriptまたはjqueryで実行する場合は、最後に次の行を追加します。

window.location.href=navigated.php;

ここで、navigateed.phpは、リダイレクトしたいページです。

幸運を!

于 2013-02-03T06:36:07.807 に答える
1

ページ A からページ B (PHP) に移動してからページ C に移動する代わりに、A から B に ajax 投稿を送信し、検証してからページ C に直接進むこともできます。これの利点は、サーバー側で実行できることです。検証 (ページ B で発生) を行い、ページ A を離れたりリロードしたりせずにユーザーに警告します。そうしないと、A から B に移動してから A に戻る必要があります。

<script>
$(function() {
        $('form').submit(function() {
                //Initial validation
                if($('#input1').val()=="")
                {
                    alert("field is blank!");
                    return false
                }
                //After validating form, send to page B
                $.post('PageB.php', {
                        'field1': $('#input1').val(),
                        'field2': $('#input2').val()
                        //etc
                    }, function (data) {
                        //Validate the response from Page B
                        if (data!="success")
                        {
                            alert("Error:"+data);
                        }
                        else
                        {
                            //Go to Page C if Page B was successful
                            window.location.href = "nextpage.html";
                        }
                    });
        return false;
    });
</script>
于 2013-02-03T08:49:30.853 に答える
0

JQuery と AJAX を使用し、JSP サーブレットや PHP などのサーバー側スクリプトを使用するのは非常に簡単です。私の場合、JSP をサーバー側スクリプトとして利用し、JQuery の AJAX サポートをサーバー側スクリプトに送信しています。

サーバー側コンポーネントのコードはここに入る..

page2.jsp

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>

    <h1 style="color:red">Contents from Page 2</h1>
    <%=request.getParameter("parmeter")%>
    </body>
    </html>

クライアント サイド スクリプトのコードはここに記述します。

pag1.html

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
       <script>       
          function submitRequest(){

             var v= document.getElementById("test1").value;
             alert(v);
              $.ajax({url:"page2.jsp?parmeter="+v,
                    error: function (xhr, ajaxOptions, thrownError) {

                        alert("fail");
                        alert(xhr.status);
                        alert(thrownError);
                   },
                    success:function(result){
                          alert("sucesses");
                          $("#mydiv").html(result);
                    }
                  });
          }

        </script>

    </body>


    <form>
        <!-- Whatever data you want to submit -->
        <input type="text" id="test1"><br>
        <input type="button" value="Submit" onclick="submitRequest()">
    </form>

    <div id="mydiv">
    Contents of Page 2 jsp will be displayed here
    </div>
    </html>

送信をクリックすると、テキスト ボックスに入力された内容が関数に送信され、submitRequest()この関数は他のページへの AJAX 呼び出しを行い、page2.jsp に要求を送信します。page2.jsp は受け取ったパラメーターを表示するだけなので、上記のように AJAX コールバック関数内で成功のためにコーディングすることで、現在のページに page2 の結果を表示することを選択できます。

現在のページのコンテンツを、AJAX リクエストを通じてリクエストされたページに置き換えます。他のページに詳細を提出することができることを示しています

于 2013-02-03T11:01:47.710 に答える