Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 09-06-2011 16:32:59

mina13
Membre
Date d'inscription: 09-06-2011
Messages: 13

formulaire

Bonjour,
je débute sur ZF.
J'ai créer un formulaire qui permet à un utilisateur de s'inscrire sur mon site. Mais je voudrais que l'email sur unique. Lorsque l'email existe deja sur la base de données un message "email utilisé" doit s'affiché.
Voici le code que je fais au niveau du controlleur:

public function inscriptionAction(){
       $form = new Application_Form_InscriptionForm();
       $this->view->form = $form;
       if ($this->_request->isPost() && $this->_request->getPost('Inscription')) {
            $formData = $this->_request->getPost();
             if($form->isValid($formData)){
             
            $sql = 'SELECT count(*) FROM utlisateur WHERE email="'.mysql_escape_string($_POST['email']).'"';
            $req = mysql_query($sql);
            $result = mysql_fetch_array($req);

             if ($result >=1) {
                    $this->view->erreur = "email existant";
             }else{
                $email = $form->getValue('email');
                $pass = md5($form->getValue('password'));
             }
            $this->ecriture->saveUtilisateur(
                        new Application_Model_Utilisateur(null, null, $pass,
                                                          'user', $email, 0,
                                                          null, null, null,
                                                          null, null, null, null)
                        );

            $this->view->inscriptionOk = "Merci de vous être inscrit,
              vous devez activer votre compte par mail pour pouvoir vous identifier";

      }
   }
}
}

Le problème est que lorsqu'on s'inscrit avec un émail existant déjà dans la base ce dernier est enregistré mais on ne peut pas se connecter avec. Et je ne vois pas comment faire.
Merci d'avance pour votre aide.

Hors ligne

 

#2 09-06-2011 17:46:30

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: formulaire

Bonjour, tu dois utiliser le validateur de champ Zend_Validate_Db_NoRecordExists wink

Dernière modification par shadypierre (09-06-2011 17:46:44)

Hors ligne

 

#3 10-06-2011 11:02:29

mina13
Membre
Date d'inscription: 09-06-2011
Messages: 13

Re: formulaire

Merci pour l'aide, ça marche.smile
Une autre question comment faire une redirection avec ZF? J
Je m'explique, j'ai un devis en pdf que j'aimerai qu'il s'affiche sur un nouveau onglet.
Merci d'avance.

Hors ligne

 

#4 10-06-2011 15:35:53

f.garoby
Membre
Date d'inscription: 02-03-2011
Messages: 105

Re: formulaire

Pour ouvrir un lien dans un autre onglet/une autre fenêtre, ce n'est avec du PHP (et donc encore moins avec du Zend Framwork) que tu peux faire ça, mais tout simplement avec du HTML : la balise "a" admet un attribut "target" dont une des valeurs possibles est "_blank"

Hors ligne

 

#5 10-06-2011 20:05:33

probitaille
Membre
Lieu: Montréal
Date d'inscription: 20-04-2009
Messages: 336
Site web

Re: formulaire

Pour la redirection, tu peux faire ceci :

Code:

[lang=php] $this->_redirect($this->view->url(array('controller'=>'index','action'=>'index')));

Dernière modification par probitaille (10-06-2011 20:07:25)

Hors ligne

 

#6 14-06-2011 10:01:06

mina13
Membre
Date d'inscription: 09-06-2011
Messages: 13

Re: formulaire

f.garoby voici le code de mon formulaire et j'utilise bien l'attribut target mais le pdf s'affiche toujours sur la même page.

<?php
class Application_Form_PanierForm extends Zend_Form
{
    public function __construct($title)
    {
        parent::__construct();
        $submit = new Zend_Form_Element_Submit($title);
        $submit->__set("target", "_blank");
        $submit->setLabel('');

        $this->addElements(array($submit));
    }
}
?>

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages