2012-06-25 1 views
0

Я пытаюсь использовать функцию формы sencha для отправки содержимого формы в почтовый скрипт PHP. У меня довольно слабые знания в php и sencha, но все еще пытаюсь заставить его работать с сценарием PHP-кода, который я нашел. Часть sencha - это форма обратной связи с тремя полями.Как отправить данные формы из sencha в php-скрипт электронной почты

Вот Сенча часть кода:

 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') представляет();. линия отвечает за отправку данных в скрипт feedback.php, который выглядит следующим образом:

<?php 
// Configuration Settings 
$SendFrom = "Form Feedback <[email protected]>"; 
$SendTo =  "[email protected]"; 
$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"); 
?> 

выше работают и отправки по электронной почте, но только с последним содержанием поля «знак:„The Bad“» следующим образом: null: ff (при вводе ff для последнего поля)

Мне кажется, что петля PHP для сборки сообщения является проблемой, но, возможно, я не правильно передаю данные?

Любые предложения? Спасибо заранее.

ответ

0

Хмм ваши поля в примере Сенча не имеют имен. Переписывают ли они друг друга? Если вы прокомментируете поле «Плохое» - это поле, которое появляется в поле «Хорошее»? Наверное, это может быть просто отправка коллекции. Я бы использовал Fiddler2 для перехвата отправляемых данных и посмотреть, есть ли в POST фактические данные, которые вы ожидаете. Может быть, попробуйте просто дать им все имена для полей и просто ссылаться на них напрямую?

+0

** THANKS ** Martin. Я добавил имя для каждого поля, и он просто работает. – user1480385

 Смежные вопросы

  • Нет связанных вопросов^_^