ページにジャンプせずにPHPフォームの送信を実現する方法

PHPz
リリース: 2023-04-25 15:47:56
オリジナル
1103 人が閲覧しました

Web 開発ではフォームは不可欠な要素です。ユーザーはフォームを通じてサーバーにデータを送信します。サーバーはデータを受信した後に処理し、対応する結果をユーザーに返します。 PHP では、フォーム処理には通常 POST または GET メソッドが使用され、送信後の操作は通常、処理のために別のページにジャンプします。ただし、場合によっては、フォーム送信後にそのページにジャンプしたくない場合や、処理のために別のページにジャンプしたくない場合があります。この記事では、PHP フォームを送信するときの非ジャンプ ページとジャンプ ページの実装に焦点を当てます。

1. ページにジャンプせずに php フォーム送信を実装する方法

1. Ajax テクノロジーを使用する

Ajax は、ページを更新せずにサーバーと対話できるテクノロジーです。 . ページに飛ばずにデータの送受信が可能です。 Ajax を使用してフォーム データを送信すると、ページを更新したり他のページにジャンプしたりせずに、データをサーバーに直接送信できます。

具体的な実装方法:

まず、Web ページに jQuery ライブラリと js ファイルを導入する必要があります。例:


次のコードを記述しますform.js ファイル内:

$(document).ready(function() {
// フォームデータを取得
var formData = $('#myForm').serialize();
// Ajax リクエストを送信
$.ajax({

type: "POST",
url: "submit.php",
data: formData,
success: function(result) {
  // 处理服务器返回的数据
  $('#result').text(result);
}
ログイン後にコピー

});
});

PHP コードでは、フォーム データは前と同じ方法ですが、作業するために他のページに移動する必要はありません。例:

$name = $_POST['name'];
$email = $_POST['email'];
// データ処理を実行します
$result = "こんにちは、" . $name . "! あなたの電子メールは " . $email;
// 結果を返します
echo $result;
?>

2 XMLHttpRequest オブジェクトの使用

jQuery ライブラリと Ajax テクノロジを使用して、ページにジャンプせずにフォームを送信することに加えて、XMLHttpRequest オブジェクトを使用してこれを実現することもできます。 XMLHttpRequest オブジェクトは、Web 開発で一般的に使用されるメソッドの 1 つであり、これを使用して非同期データ送信を実現できます。

具体的な実装方法:

まず、Web ページにフォーム要素を作成し、リスナーを追加する必要があります。送信ボタンをクリックすると、XMLHttpRequest オブジェクトを通じてデータがサーバーに送信されます。例:











php コードでは、フォーム データを処理する方法は以前と同じですが、処理のために他のページにジャンプする必要がない点が異なります。例:

$name = $_POST['name'];
$email = $_POST['email'];
// データ処理を実行します
$result = "こんにちは、" . $name . "! あなたの電子メールは " . $email;
// 結果を返します
echo $result;
?>

2 . PHPフォーム送信ジャンプページ実装方法

場合によっては他のページにジャンプして処理する必要があります。たとえば、新しいユーザー アカウントを作成する場合、フォームを送信した後にユーザー情報ページにジャンプして表示する必要があります。 PHP には、ページにジャンプするためのさまざまなメソッドが用意されています。これらを以下に紹介します。

1.header メソッド

header メソッドは、ページにジャンプするために最も一般的に使用されるメソッドの 1 つです。 PHP. このメソッドは、ジャンプを実装するために HTTP ヘッダーを設定できます。例:

header("Location: http://www.example.com/userinfo.php");
exit;

ヘッダーを設定する前に出力があってはなりませんこれにより、HTTP ヘッダーが正しく設定されなくなるためです。同時に、ページにジャンプした後にプログラムが実行を継続しないように、exit または die メソッドをヘッダー メソッドの後に追加する必要があることに注意してください。

2.JavaScriptジャンプ

ヘッダーメソッド以外にJavaScriptを使用してページにジャンプすることもできます。例:

このメソッドは PHP コードに直接埋め込むことができます。なお、JavaScriptを使用してページにジャンプした場合、ブラウザに表示されるURLは変更されず、ソースコードを表示する場合はリダイレクト先のURLのみが表示されます。

3.meta タグ ジャンプ

もう 1 つの方法は、 タグを使用してページにジャンプすることです。これは、次のコードを head タグに追加することで実現できます:

このうち、content 属性はジャンプ時間を秒単位で表し、url 属性は対象ページの URL を表します。

概要

この記事では、主にAjax技術とXMLHttpRequestオブジェクトを利用して、ページに飛ばずにphpフォームを送信する実装方法を紹介します。同時に、PHP フォーム送信用のジャンプ ページを実装する 3 つの方法、つまりヘッダー メソッド、JavaScript ジャンプ、 タグ ジャンプも紹介します。各方法には独自の長所と短所があり、実際のニーズに応じて適切な方法を選択する必要があります。

以上がページにジャンプせずにPHPフォームの送信を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!