sencha touchフォーム機能を使用して、フォームのコンテンツをPHPメールスクリプトに送信しようとしています。私はphpとsenchaについてかなり弱い知識を持っていますが、それでも私が見つけたphpサンプルスクリプトでそれを機能させようとしています。煎茶の部分は、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(); lineは、次のような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ループが問題であるように見えますが、おそらくデータを正しく転送していませんか?
助言がありますか?前もって感謝します。