0

ここで見つけた単純なphpフォームを使用していますhttp://www.1stwebdesigner.com/tutorials/custom-php-contact-forms/comment-page-2/#comments

しかし、私はそれに関してほとんど問題を抱えていません。送信ボタンをクリックすると、mail.phpにリダイレクトされるのではなく、自分のWebサイトにとどまり、代わりに自分のWebサイトで送信されたメッセージを印刷/エコーすることができます。

また、フィールドに要件を持たせたいと思います。たとえば、PHPで行う方法を知っている空ではないなどですが、最初にリダイレクトの問題を解決する必要があります。

4

2 に答える 2

2

必要なのはjQueryの$.ajaxです。これにより、ページをリロードせずにPOSTリクエストが送信されます。

ボタンが呼び出されたとしましょう。myButtonその後onClick()、関数を呼び出すイベントに対して

$.ajax({
  type: "POST",
  url: "some.php",
  data: { name: "John", location: "Boston" }
}).success(function( msg ) {
  alert( "Data Saved: " + msg );
});

some.php次に、$_POST['name']とを使用して情報を取得します$_POST['location']

編集

入力フィールドがあるとします。このようなフィールドからjQueryを介して情報を取得することもできます。次に、入力フィールドからajaxを介してphpスクリプトに情報を送信できます。

$('#yourInputField').val();

ここyourInputFieldで、は入力フィールドのIDです。これにより、この情報をスクリプトに取り込むことができます。フォームに複数の要素がある場合は、関数serialize()を確認することをお勧めします。原則として同じことを行い、すべての情報をJSON文字列に圧縮するだけです。

于 2012-11-24T11:36:03.303 に答える
0

同じページにとどまると、フォームアクションを現在のページに設定するだけで、次を使用できます。

if (isset ($_POST['submit'])){
(php code to run goes in here)
echo 'blah blah';
}

送信ボタンが押されたときにphpコードが実行されます:)

ただし、これでもページがリロードされますが、別のphpページに移動することはありません。ページをまったくリロードしたくない場合は、ajaxを使用できます:)

于 2012-11-24T11:39:34.593 に答える