IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MVC PHP Discussion :

Problème indexAction() Paramètres perdus


Sujet :

MVC PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème indexAction() Paramètres perdus
    Bonjour,

    J'ai un petit problème dont ci-dessous la description:

    J'ai créer une action qui permet d'enregistrer quelques informations dans une table mysql,et un formulaire HTML.
    ==============================================
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    public function registerAction()
        {
            if ($this->getRequest()->isPost()) {
                $register = new Application_Model_Register();
                if (isset($_POST['nom'])) {
                                  $this->_helper->redirector('index?page_id=inscription');
                      $this->view->error='Problème lors d enregistrement';
                            }
                           else{
                                    $register->createUser(array(
                                   'nom'         => $_POST['nom'],
                                   'mail'         => $_POST['mail'],
                                   'telephone'      => $_POST['tel'],
                                    'password'     => $_POST['password']
                                       ));
                         $this->_helper->redirector('index');
                            }
     
            }else{
                            $this->_helper->redirector('index?page_id=inscription');
                $this->view->error='Problème lors d enregistrement';
            }
        }
    ===============================================

    Dans mon formulaire HTML j'affiche mon message d'erreur dans un DIV.

    ===============================================
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $this->error ; ?>
    ===============================================

    Avec cette manip,je n'arrive pas a afficher mon message d'erreur;après l’exécution de l'action register les informations sont pérdu

    Que doit-je faire ???

    Le message s'affiche seulement si je met le code suivant $this->view->error='Problème lors d enregistrement'; dans ma fonction indexAction().

    J'ai essayer de créer un nouveau controller,mais toujours le même problème,avec la commande zf create controller Register il me crée un nouveau fichier index.phtml alors que j'ai déjà le même dans mon rep index. puis-je le réutilisé?

  2. #2
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Résolue
    Bonjour,

    j'ai enfin trouver la slution :

    Pour arriver à afficher les messages d'erreurs :
    avant de faire chaque redirection, on ajoutes le message d'erreur dans l'action helper FlashMessenger puis on affiches dans la vue destinée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    public function registerAction()
        {
               $flasher = $this->getHelper('FlashMessenger');
            if ($this->getRequest()->isPost()) {
                $register = new Application_Model_Register();
     
                if (isset($_POST['nom'])) {
     
                   $flasher->setNameSpace('error');
                  $flasher->addMessage("problème lors de l'enregistrement");
                                  $this->_helper->redirector('index?page_id=inscription');//???
     
                            }
                           else{
                                    $register->createUser(array(
                                   'nom'         => $_POST['nom'],
                                   'mail'         => $_POST['mail'],
                                   'telephone'      => $_POST['tel'],
                                    'password'     => $_POST['password']
                                       ));
                         $this->_helper->redirector('index');
                            }
     
            }else{
       $flasher->setNameSpace('error');
                  $flasher->addMessage("problème lors de l'enregistrement");
                                  $this->_helper->redirector('index?page_id=inscription');
     
            }
        }
    dans la vue associée à l'action register(c-a-d la vue destinée à afficher le message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php if ($flashMessenger->setNamespace('error')->hasMessages()): ?>
        <div class="message error">
        <?php foreach ($flashMessenger->getMessages() as $msg): ?>
            <?php echo $msg ?>
        <?php endforeach; ?>
        </div>
    <?php endif; ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème requête paramétrée mysqli
    Par Ethylene dans le forum Installation
    Réponses: 5
    Dernier message: 15/05/2006, 16h57
  2. Problème de paramètres dans mon code javascript
    Par cocacollection dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 15/03/2006, 10h53
  3. [POO] Problème de paramètre passé par référence
    Par dug dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/08/2005, 20h29
  4. [JSP] Problème passage paramètre
    Par besco dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 13/09/2004, 10h15
  5. [SWT] Problème de paramètre GridData
    Par yolepro dans le forum SWT/JFace
    Réponses: 4
    Dernier message: 06/12/2002, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo