[英]How to send form data from sencha to php email script
我正在嘗試使用sencha touch表單功能將表單內容發送到PHP郵件腳本。 我在php和sencha方面的知識很薄弱,但是仍然嘗試使其與我發現的php示例腳本一起使用。 sencha部分是具有3個字段的基本反饋形式。
這是代碼的sencha部分:
feedbackForm = Ext.create("Ext.tab.Panel", {
items: [{
title: 'Feedback',
iconCls: 'user',
xtype: 'formpanel',
url: 'feedback.php',
layout: 'vbox',
tabBar: false,
items: [
{
xtype: 'fieldset',
tabBar: false,
items: [
{
xtype: 'textfield',
label: 'Your Name'
},
{
xtype: 'emailfield',
label: 'Your Email'
},
{
xtype: 'textfield',
label: 'The Good'
},
{
xtype: 'textfield',
label: 'The Bad'
}
]
},
{
xtype: 'button',
text: 'Send',
ui: 'confirm',
handler: function() {
this.up('formpanel').submit();
}
}]
}]
});
this.up('formpanel')。submit(); 行負責將數據發送到feedback.php腳本,如下所示:
<?php
// Configuration Settings
$SendFrom = "Form Feedback <feedback@myDomain.com>";
$SendTo = "myEmail@gmail.com";
$SubjectLine = "Feedback Submission";
$ThanksURL = "thanks.html"; //confirmation page
// Build Message Body from Web Form Input
foreach ($_POST as $Field=>$Value)
$MsgBody .= "$Field: $Value\n";
sgBody .= "\n" . @gethostbyaddr($_SERVER["REMOTE_ADDR"]) . "\n" .
$_SERVER["HTTP_USER_AGENT"];
sgBody = htmlspecialchars($MsgBody, ENT_NOQUOTES); //make safe
// Send E-Mail and Direct Browser to Confirmation Page
mail($SendTo, $SubjectLine, $MsgBody, "From: $SendFrom");
header("Location: $ThanksURL");
?>
上面的方法可以正常工作並發送電子郵件,但只能通過以下方式使用'label:'The Bad'的最后字段內容:null:ff(當為最后一個字段輸入ff時)
在我看來,組裝消息的PHP循環是問題所在,但也許我沒有正確傳輸數據?
有什么建議么? 提前致謝。
嗯,您在Sencha示例中的字段沒有名稱。 他們互相覆蓋嗎? 如果您將“不良”字段注釋掉,那么是“良好”字段旁邊的字段? 我想這可能只是發送了一組項目。 我將使用Fiddler2截取正在發送的數據,並查看POST中是否包含您期望的實際數據。 也許嘗試僅給它們提供字段的所有名稱,然后直接引用它們?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.