allez c' partie!!!!


fichier lib/contactfrom.class.php


class ContactForm extends BaseForm {

    public function configure() {
       
        $this->setWidgets(array(
            'nom' => new sfWidgetFormInputText(array(), array('class' => 
'text')),
            'prenom' => new sfWidgetFormInputText(array(), array('class' => 
'text')),
            'email' => new sfWidgetFormInputText(array(), array('class' => 
'text')),
            'message' => new sfWidgetFormTextarea(array(), array('class' => 
'text')),
        ));
        $this->widgetSchema->setNameFormat('contact[%s]');

        $this->setValidators(array(
            'nom' => new sfValidatorString(array('required' => true)),
            'prenom' => new sfValidatorString(array('required' => true)),
            'email' => new sfValidatorEmail(array(), array('required' => 'Le 
champ de l\'adresse email est obligatoire.', 'invalid' => 'L\'adresse email est 
invalide.')),
            'message' => new sfValidatorString(array('min_length' => 10), 
array('required' => 'Le champ message est obligatoire.', 'min_length' => 'Le 
message "%value%" est trop court. Il faut au moins %min_length% caractères.',
            )),
        ));
        $this->setDefaults(array('email' => 'EMAIL:', 'nom' => 'NOM:', 'prenom' 
=> 'PRENOM:', 'message' => 'MESSAGE:'));

        $this->widgetSchema->setLabels(array(
            'nom' => FALSE,
            'prenom' => FALSE,
            'email' => FALSE,
            'message' => FALSE,
        ));
    }

}

module/contact/action

class contactActions extends sfActions
{
   

 public function executeIndex(sfWebRequest $request)
  {
    $this->form = new ContactForm();
    if ($request->isMethod('post')) // On vérifie que l'on a bien fait en post
    {
      $this->form->bind($request->getParameter($this->form->getName()));

      if ($this->form->isValid()) // On va pouvoir envoyer les mails de contact
      {
 

          $mail = Swift_Message::newInstance()
               ->setFrom($this->form->getValue('email'))
               ->setTo('nlefeb...@gmx.fr')
               ->setSubject('Nouveaux message de votre site')
               ->setBody( '<h4>Demande 
de:'.$this->form->getValue('nom').$this->form->getValue('prenom').'</h4>
                   <p>'.$this->form->getValue('message').'</p>','text,html') ;
           $this->getMailer()->send($mail);


//        //Redirection sur la page d'accueil avec une notice
        $this->getUser()->setFlash('notice', 'Votre demande de contact a bien 
été prise en compte.');
        $this->redirect('@homepage');
      }
    }
  }}

bon je pense que tu n'a pas besoin de la vue

mail() doit être activer sur ton server

si sa ta aidé j'en suis ravie...
@+

Le 13 mai 2011 à 19:37, Nicolas Lefebvre a écrit :

> tu veux ma page de contact ?"solut."
> 
> Le 13 mai 2011 à 13:49, Cyril FLIELLER a écrit :
> 
>> Oui moi par exemple, merci d'avance =)
>> 
>> Cyril FLIELLER
>> 
>> 
>> 
>> Le 13 mai 2011 12:25, Yo <yoproguitarist...@hotmail.fr> a écrit :
>> Merci pour ta réponse! Je vais étudier ca!
>> 
>> Je posterais ma solution une fois que j'aurais finis ce satané module
>> de contact!!!(ca pourra toujours aider quelqu'un!)
>> 
>> On 12 mai, 19:22, Mohamed Lamine Kamagaté <kamaga...@gmail.com> wrote:
>> > Je te conseillerais de lire cette documentation. C'est cours précis, concis
>> > et ça répondra à tes 
>> > préoccupations.http://www.symfony-project.org/more-with-symfony/1_4/fr/04-Emails
>> > <http://www.symfony-project.org/more-with-symfony/1_4/fr/04-Emails>Bonne
>> > chance
>> >
>> > 2011/5/12 Yo <yoproguitarist...@hotmail.fr>
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > > Peux tu m'en dire plus sur le smtp justement . Car j'ai vu qu'il faut
>> > > lui indiquer les adresses susceptible d'envoyer des mails. Hors ce que
>> > > je veux faire moi c'est un formulaire de contact. Donc c'est
>> > > l'internaute qui tape dans un champs son adresse mail et qui envoie un
>> > > mail via mon champs "texte" à une adresse qui ne lui est pas
>> > > communiquée (la mienne) et qui elle est définie dans le code.
>> > > Est ce que c'est faisable?
>> >
>> > > Merci de ta réponse
>> >
>> > > On 12 mai, 13:57, Mohamed Lamine Kamagaté <kamaga...@gmail.com> wrote:
>> > > > bonjour, vérifie les configurations de ton serveur smtp et la
>> > > configuration
>> > > > de ton fichier factory.yml
>> >
>> > > > 2011/5/12 Yo <yoproguitarist...@hotmail.fr>
>> >
>> > > > > Bonjour,
>> > > > > J'ai un soucis dans ma réalisation de formulaire de contact. Je
>> > > > > voudrais qu'à partir de ce formulaire cela envoie un mail à une
>> > > > > adresse définie (la mienne). Symfony ne m'indique aucune erreur dans
>> > > > > l’exécution du code cependant je ne reçois jamais les mails en
>> > > > > question.... Il ne sont pas non plus envoyés.
>> >
>> > > > > Mon action :
>> >
>> > > > >  public function executeIndex(sfWebRequest $request)
>> > > > >  {
>> > > > >        $this->form = new sfForm();
>> > > > >                $this->form->setWidgets(array(
>> > > > >                        'adresseMail'   => new
>> > > > > sfWidgetFormInputText(array('label' => "Votre
>> > > > > adresse e-mail :")),
>> > > > >                        'objet'                 => new
>> > > > > sfWidgetFormInputText(array('label' => "Objet du
>> > > > > mail")),
>> > > > >                        'texte'         => new
>> > > > > sfWidgetFormTextarea(array('label' => "Texte du
>> > > > > mail")),
>> > > > >                ));
>> >
>> > > > >                if($this->form->isValid())
>> > > > >                {
>> > > > > $mailContext = array('name'=> 'ExempleTest mail');
>> > > > >                   $mail = Swift_Message::newInstance()
>> > > > >                   ->setTo("monadressem...@hotmail.fr")
>> > > > >                   ->setSubject($request->getParameter('objet'))
>> > > > >                   ->setFrom($request->getParameter('adresseMail'))
>> > > > >                   ->setBody($request->getParameter('texte'));
>> >
>> > > > >                   $this->getMailer()->send($mail);
>> > > > >                }
>> > > > >  }
>> >
>> > > > > Mon template :
>> >
>> > > > > <form action="<?php echo url_for("contact/index") ?>" method="POST">
>> > > > > <table>
>> > > > > <?php  echo $form ?>
>> > > > > <tr><td colspan="2"><input type="submit"/></td></tr></table></form>
>> >
>> > > > > Voila, c'est tout simple mais pourtant ça ne marche pas!!! Et ça fait
>> > > > > maintenant deux jours que je me casse les dents dessus...
>> > > > > Merci d'avance pour vos suggestions/solutions!
>> >
>> > > > > --
>> > > > > Vous recevez ce message, car vous êtes abonné au groupe Google
>> > > > > Groupes Symfony-fr.
>> > > > > Pour envoyer un message à ce groupe, adressez un e-mail à
>> > > > > symfony-fr@googlegroups.com.
>> > > > > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
>> > > > > symfony-fr+unsubscr...@googlegroups.com.
>> > > > > Pour plus d'options, consultez la page de ce groupe :
>> > > > >http://groups.google.com/group/symfony-fr?hl=fr
>> >
>> > > --
>> > > Vous recevez ce message, car vous êtes abonné au groupe Google
>> > > Groupes Symfony-fr.
>> > > Pour envoyer un message à ce groupe, adressez un e-mail à
>> > > symfony-fr@googlegroups.com.
>> > > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
>> > > symfony-fr+unsubscr...@googlegroups.com.
>> > > Pour plus d'options, consultez la page de ce groupe :
>> > >http://groups.google.com/group/symfony-fr?hl=fr
>> 
>> --
>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
>> Symfony-fr.
>> Pour envoyer un message à ce groupe, adressez un e-mail à 
>> symfony-fr@googlegroups.com.
>> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
>> symfony-fr+unsubscr...@googlegroups.com.
>> Pour plus d'options, consultez la page de ce groupe : 
>> http://groups.google.com/group/symfony-fr?hl=fr
>> 
>> 
>> 
>> -- 
>> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
>> Symfony-fr.
>> Pour envoyer un message à ce groupe, adressez un e-mail à 
>> symfony-fr@googlegroups.com.
>> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
>> symfony-fr+unsubscr...@googlegroups.com.
>> Pour plus d'options, consultez la page de ce groupe : 
>> http://groups.google.com/group/symfony-fr?hl=fr
> 
> 
> -- 
> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
> Symfony-fr.
> Pour envoyer un message à ce groupe, adressez un e-mail à 
> symfony-fr@googlegroups.com.
> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
> symfony-fr+unsubscr...@googlegroups.com.
> Pour plus d'options, consultez la page de ce groupe : 
> http://groups.google.com/group/symfony-fr?hl=fr

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google 
Groupes Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail 
à symfony-fr@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
symfony-fr+unsubscr...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/symfony-fr?hl=fr

Répondre à