2014-07-07 64 views
-4

我很困惑,試圖獲得一個jQuery/AJAX形式發佈數據,並通過電子郵件發送到PHP。通過電子郵件與jQuery/AJAX和PHP發送多個變量

這裏是JQuery的:

$("#sendbut3").click(function() { 
var ntext = $("#smallfield3").val(); 
var ptext = $("#smallfield2").val(); 
var q1text = $("#smallfield1").val(); 
$.ajax({ 
    url: '/send.php', 
    type: 'post', 
    data: {ntext: ntext, ptext: ptext, q1text: q1text}, 
}); 
return false; 
}); 

這是PHP:

<?php 

$email_to = "[email protected]"; 
$email_from = "[email protected]"; 
$email_message = $_POST["ntext", "ptext", "q1text"]; 
$email_subject = "query from web form"; 
$headers = 'From: '.$email_from."\r\n". 
'Reply-To: '.$email_from."\r\n" . 
'X-Mailer: PHP/' . phpversion(); 

@mail($email_to, $email_subject, $email_message, $headers); 
?> 

任何人都可以請指出我的錯誤?

謝謝你的時間!

+0

所以被髮送的電子郵件? – imbondbaby

+0

'$ _POST [「ntext」,「ptext」,「q1text」];'這是行不通的。 – putvande

+0

什麼都沒有通過...我懷疑問題是我寫的變量(數據:在jQuery上的第4行和在PHP上的第4行) – Pete

回答

3

基本PHP數組:你需要學習他們:

$email_message = $_POST["ntext", "ptext", "q1text"]; 

是完全無效的。你不能使用這樣的多個鍵。

$ntext = $_POST['ntext']; 
$ptext = $_POST['ptext']; 
$qltext = $_POST['qltext']; 

會更容易接受,假設你的JS代碼實際上產生這樣的key:value對。

你有什麼是平出語法錯誤和不可能永遠工作:

php > $foo = array('a' => 'b', 'c' => 'd'); 
php > echo $foo['a', 'b']; 
PHP Parse error: syntax error, unexpected ',', expecting ']' in php shell code on line 1 
+0

所以首先要做的是檢查錯誤。 我不是一個phpist,但我知道有一個函數來激活他們或某事。 – user1835565

+0

error_reporting和display_errors。調試/開發時都不應該關閉。 –

+0

我不知道該怎麼做。是的,我需要學習數組,它們是什麼以及如何使用它們。 – Pete

相關問題