CakePHP-Fr.Org

Forum francophone du Framework CakePHP

Vous n'êtes pas identifié.

#1 06-03-2016 21:09:28

fahassan
Chouquette
Date d'inscription: 06-03-2016
Messages: 1

probleme pour ajouter un avatar

Bonjour,

je travaille sur un projet de systeme de membre ou chaque personne peut s'inscrire en telechargeant ou pas un avatar pour son profil,
ce n'est pas obligatoire de mettre une image.
J'ai une fonction add pour telecharger un avatar et le mettre dans le profil du membre mais j'y arrive pas.

C'est la première fois que je travaille avec CakePHP et je suis un peu perdue.
Merci d'avance de votre aide

Voici ma fonction add qui est dans UsersController:


public function add() {//Ajout lors de l'inscription
       
        $this->User->validator()->remove('avatar');

        if ($this->request->is('post')) {

            // Envoi fichier avatar
            if(!empty($this->data['User']['avatar']))
            {
                $file=$this->data['User']['avatar'];
                $ary_ext=array('png','jpg','jpeg','gif'); //array of allowed extensions
                $ext = substr(strtolower(strrchr($file['avatar'], '.')), 1); //get the extension
                if(in_array($ext, $ary_ext))
                {
                    move_uploaded_file($file['tmp_name'], WWW_ROOT .'img'.DS.'uploads'.DS.time().$file['avatar']);
                    $this->request->data['User']['avatar'] = time().$file['avatar'];
                }
            }else{
                $this->request->data['User']['avatar'] = WWW_ROOT . 'img'. DS . 'uploads' .DS . 'avatar.png';
            }
            $this->User->create();
            if ($this->User->save($this->request->data)) {
                $this->Session->setFlash('L\'utilisateur a été sauvegardé, le compte va être prochainement validé par un administrateur','default', array('class' => 'alert alert-success'));

                $this->User->send($this->request->data['Users'], 'accor31@gmail.com', 'Un nouveau utilisateur s\'est inscrit sur La Marmite', 'notification_nouvel_utilisateur');

                return $this->redirect('/');
            } else {
                $this->Session->setFlash('L\'utilisateur n\'a pas été sauvegardé. Merci de réessayer.','default', array('class' => 'alert alert-danger'));
            }
        }
    }

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB
Traduction par FluxBB.fr