jQuery を使用してフォームのデータを送信しようとしています。ただし、データはサーバーに到達しません。私が間違っていることを教えてください。
私のHTMLフォーム:
<form id="contactForm" name="contactForm" method="post">
<input type="text" name="nume" size="40" placeholder="Nume">
<input type="text" name="telefon" size="40" placeholder="Telefon">
<input type="text" name="email" size="40" placeholder="Email">
<textarea name="comentarii" cols="36" rows="5" placeholder="Message"></textarea>
<input id="submitBtn" type="submit" name="submit" value="Trimite">
</form>
JavaScript (上記のフォームと同じファイル内):
<script type="text/javascript">
$(document).ready(function(e) {
$("#contactForm").submit(function() {
$.post("getcontact.php", $("#contactForm").serialize())
// Serialization looks good: name=textInNameInput&&telefon=textInPhoneInput etc
.done(function(data) {
if (data.trim().length > 0) {
$("#sent").text("Error");
} else {
$("#sent").text("Success");
}
});
return false;
})
});
</script>
サーバー側 PHP ( /getcontact.php ):
$nume = $_REQUEST["nume"]; // $nume contains no data. Also tried $_POST
$email = $_REQUEST["email"];
$telefon = $_REQUEST["telefon"];
$comentarii = $_REQUEST["comentarii"];
私が間違っていることを教えてください。
アップデート
チェックvar_dump($_POST)
すると、空の配列が返されました。
奇妙なことは、私のローカル マシンでテストした同じコードが正常に動作することです。ホスティング スペースにファイルをアップロードすると、機能しなくなります。jQuery を使用せずに昔ながらのフォームを実行してみましたが、すべてのデータは正しかったです。
これがどのようにサーバー構成の問題になるのかわかりません。何か案は?
ありがとうございました!