簡體   English   中英

如何將表單數據從sencha發送到php電子郵件腳本

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM