2016-12-20 11 views
-2

私のウェブサイトには、お問い合わせフォームとアンケートフォームがあります。私は連絡先フォームをセットアップして、うまく動作するようにしました。今、同じJavaScriptファイル(ページリフレッシュを防ぐためのajax用)とphp(基本phpmailer関数)ファイルを共有する2番目のフォームを追加しようとしています。ユーザーがphpmailerの同じページに2番目のphpmailerフォームを追加する最も良い方法は何ですか?

<?php 
$name = $_POST["name"]; 
$email = $_POST["email"]; 
$messagesubject = $_POST["messagesubject"]; 
$message = $_POST["message"]; 

$EmailTo = "[email protected]"; 
$Subject = "$messagesubject from $name"; 

// prepare email body text 
$Body .= "Name: "; 
$Body .= $name; 
$Body .= "\n"; 

$Body .= "Email: "; 
$Body .= $email; 
$Body .= "\n"; 

$Body .= "Subject: "; 
$Body .= $messagesubject; 
$Body .= "\n"; 

$Body .= "Message: "; 
$Body .= $message; 
$Body .= "\n"; 

// send email 
$success = mail($EmailTo, $Subject, $Body, "From:".$email); 

// redirect to success page 
if ($success){ 
    echo "success"; 
}else{ 
    echo "invalid"; 
} 

?> 

を処理するためのフォーム

$("#contactForm").validator().on("submit", function (event) { 
    if (event.isDefaultPrevented()){ 
     // handle the invalid form... 
    } else { 
     // everything looks good! 
     event.preventDefault(); 
     submitForm(); 
    } 
}); 


//Grabs form input, and starts an ajax object 
function submitForm(){ 
    // Initiate Variables With Form Content 
    var name = $("#name").val(); 
    var email = $("#email").val(); 
    var messagesubject = $("#messagesubject").val(); 
    var message = $("#message").val(); 

    $.ajax({ 
     type: "POST", 
     url: "php/form-process.php", 
     data: "name=" + name + "&email=" + email + "&messagesubject=" + messagesubject + "&message=" + message, 
     success : function(text){ 
      if (text == "success"){ 
       formSuccess(); 
      } 
     } 
    }); 
} 
function formSuccess(){ 
    $("#msgSubmit").removeClass("hidden"); 
} 

シンプルなPHPファイルを送信したときに私の目標は、私の調査票をコーディングすることですjavascriptのページの更新を防ぐために、AJAXを利用したファイル

私どもの連絡先が上記と同じ方法で、質問への回答を私のメールに送ってください。

私の質問は次のとおりです:a)両方のフォームを同じphpとjavascriptファイルに入れるか、アンケートフォーム用に別のphpとjavascriptファイルを作成する方が効率的でしょうか?どの方法がより良いコーディング慣行ですか?

b)最初の方法が効率的であれば、私はこれを正しく理解することができないので、私が読むことができるリソースは何ですか。

私はすべての助けに感謝します、ありがとう!

+1

リユースが、ビットの書き換えは、はい、ほとんど常に – RiggsFolly

+0

必要です。既存の**コードを利用して**動作させる方法があります。 – Kitson88

+0

私は、同じPHPとjavascriptファイルに2つのフォームを持つ方法があることを読んだことから理解していますが、私が今までに見つけた読書リソースは、これを完全に把握するのに十分な深さではありません。私が読むことをお勧めする資料はありますか? – raimond

答えて

-1

私はウェブアプリケーションの問題に似ています。私がやりたい最後のことは、1つの問題だけが異なる類似のクエリ用に別のスクリプトを書くことです。私は、探している出力の種類をトリガするさまざまなフラグを受け入れる汎用スクリプトを作成して解決しました。電子メールや調査に必要なものすべてを組み込んだ新しいスクリプトを作成し、実行する関数を知らせるフラグを送信するだけです。

ここで少し詳しくはこちらをご覧ください:どのようなことができますHow do I pass parameters into a PHP script through a webpage?

関連する問題