2010-07-08 3 views
0

Je suis tellement dang près. J'essaye d'imprimer le contenu d'un formulaire à un email. Voici ce que j'ai. Je suis en mesure de pront le contenu en tant que tableau à ma vue, mais n'envoie pas les valeurs à l'email.S'il vous plaît aidez-moi à imprimer ce tableau à mon email- zend_mail

public function indexAction() 
    { 
     $formData = array(); 
     $emailData = array(); 

    $form = new Application_Form_Contact(); 

     if ($this->_request->isPost()) { 
      $formData = $this->_request->getPost(); 
      if ($form->isValid($formData)) { 

       foreach ($formData as $d){ 
        $emailData[] = $d; 
       } 

       $mail = new Zend_Mail(); 

       $mail->setFrom('[email protected]', 'user'); 
       $mail->AddTo('[email protected]', 'joel'); 
       $mail->setSubject('from form'); 
       $mail->setBodyText($emailData); 
       $mail->send(); 

      } else { 
       // bad stuff happens 
      } 
     } 
     $this->view->form = $form; 
    } 
} 

Répondre

1

emailData doit être une chaîne.

$emailData = "Email content: "; 
foreach ($formData as $d){ 
    $emailData .= $d . "\r\n"; 
} 

Pas la chose la plus élégante mais ça va marcher.

+0

L'homme-merci beaucoup pour cette aide et votre aide plus tôt! Toutes les pièces sont maintenant en place et fonctionnent! – Joel

+0

hmm-ce qui est étrange, c'est que le formulaire de données envoyé par courrier électronique ne passe pas par le validateur même si, lorsque je vois le formulaire dans la vue de processus, il a html déshabillé, etc. Idée pourquoi? – Joel

+0

Vous savez que vous devriez vraiment l'utiliser normalement. Si dans votre formulaire vous avez un Ensuite, utilisez simplement $ emailData ['something'] directement sans boucler le tout. – Iznogood

Questions connexes