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

Symfony PHP Discussion :

Symfony 3 recherche image


Sujet :

Symfony PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 92
    Points : 33
    Points
    33
    Par défaut Symfony 3 recherche image
    Bonjour,

    Voila j'ai FOsUSerBundle et hwioauthbundle d'installé,

    J'ai créé une page "Mon profil", seulement je voudrais rajouter un champ image dans mon User.php afin de pouvoir testé si l'objet existe.
    et aussi savoir comment récupérer l'image de profil Facebook ou Google...

    Je ne demande pas un code tout fait, mais pour l'instant avec ce que j'ai recherché sur Google je suis un peu perdu,
    Je n'arrive pas à trouver de doc officiel.

    Merci d'avance

  2. #2
    Membre actif
    Homme Profil pro
    recherche
    Inscrit en
    Octobre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : recherche
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2011
    Messages : 144
    Points : 228
    Points
    228
    Par défaut Imag'in
    Bonjour, il y a sur youtube des tutos qui sont vraiment sympa pour ce que tu cherche il est possible que celle-ci puisse t'aider https://youtu.be/O75_ptZEJZA

    Pour le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    {% if userInformation.profilePicture is not empty %}
    <img src="{{ userInformation.profilePicture }}"
    {% endif %}
    Une autre chaine youtube que j'aime beaucoup
    https://www.youtube.com/channel/UCEG...ZzcqLNN2Eokg1A

  3. #3
    Membre actif Avatar de jisig
    Homme Profil pro
    null
    Inscrit en
    Avril 2014
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Indonésie

    Informations professionnelles :
    Activité : null

    Informations forums :
    Inscription : Avril 2014
    Messages : 146
    Points : 273
    Points
    273
    Par défaut
    Bonjour,

    Je n'utilise que FosUserBundle pour ma part, pour l'édition d'image de profil j'ai fait ceci -->

    Mon entité User :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /**
         * @ORM\Column(name="picture", type="string", length=255, nullable=true)
         *
         */
        private $picture;
    Avec getter et setter standards.

    Parameters :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    parameters:
        //...
        user_picture_directory: '%kernel.root_dir%/../web/pictures/user/'
    Mon controlleur :
    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
    32
    33
    34
    35
    36
    37
    38
     
            //we get the old picture for delete later///
            // we need to do that before the handleRequest because the user entity is linked to the form and the repository keep it in cache///
            // and doesn't go in the db to look for it.///
            // the best solution is not mapping forms to entities and change every changes manually.///
            //TODO : need to update and put it in the condition where the form is submitted
            $oldUser = $em->getRepository('BaseBundle:User')->find($user->getId());
            $oldFile = $oldUser->getPicture();
     
            $editForm->handleRequest($request);
     
                ///IF FORM IS SUBMITTED WE TREAT DATAS///
                if ($editForm->isSubmitted() && $editForm->isValid()) {
     
                    ///WE UPDATE PICTURE IF THERE IS NEED IT AND DELETE THE OLD ONE///
                    if($user->getPicture()==null)
                    {
                        $user->setPicture($oldFile);
                    }
                    else
                    {
                        if($oldFile!='default.jpg')
                            unlink($this->getParameter('user_picture_directory').$oldFile);
     
                        /** @var Symfony\Component\HttpFoundation\File\UploadedFile $file */
                        $file = $user->getPicture();
     
                        $fileName = md5(uniqid()) . '.' . $file->guessExtension();
     
                        $file->move(
                            $this->getParameter('user_picture_directory'),
                            $fileName
                        );
     
                        $user->setPicture($fileName);
                    }
     
                    ///WE SET DATAS IN DB
    Pour les commentaires que j'ai mis ça vient d'une discussion sur le forum. je devrai faire ça plus tard (je suis encore débutant sur symfony) en espérant que ça puisse t'aider. (ps : je crois que ce serait plus propre de le faire avec un eventListener que comme je l'ai mis là, et aussi pour éviter les bugs en cas de modifications d'image mais un problème lors d'une insertion en base de donnée par exemple).

    Jisig.
    Même une feuille de papier est plus légère si on la porte à deux.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 92
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    Merci pour vos réponse, mais dans la page /Profile, userinformation n'existe pas...
    Et facebook ne me renvoi pas de photo dans le formulaire d'inscription...

    bytecode

    concernant le liens youtube c'est celui que j'ai utilisé pour installer fosuserbundle et hwioauthbundle.
    Mais rien concernant la photo de profil...

    Jisig

    merci pour tes exemples mais je ne vois pas de quel controlleur tu parles.
    mais j'ai déjà mis un picture dans mon User.php.

    je recherche toujours comment faire...

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 92
    Points : 33
    Points
    33
    Par défaut
    Bon alors pour facebook j'ai trouvé.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    {% if app.user.facebookID is not empty %}
    		<img  src="https://graph.facebook.com/{{ app.user.facebookID }}/picture"> 
    {% endif %}
    Par contre pour google... je ne vois pas, je ne trouve pas l'url adequat...

    Quelqu'un à une idée?

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 92
    Points : 33
    Points
    33
    Par défaut
    personne pour aider?

Discussions similaires

  1. recherche image et taille image
    Par omelhor dans le forum Langage
    Réponses: 3
    Dernier message: 17/09/2009, 22h18
  2. [Recherche] Image signifiant "Connecté au monde"
    Par prgasp77 dans le forum La taverne du Club : Humour et divers
    Réponses: 8
    Dernier message: 15/07/2008, 11h57
  3. recherche image liste à puce
    Par Emcy dans le forum Webdesign & Ergonomie
    Réponses: 3
    Dernier message: 30/04/2008, 09h06
  4. Recherche Image VMware Player 2 sous Vista
    Par Keldrhyn dans le forum VMware
    Réponses: 1
    Dernier message: 04/03/2008, 08h09
  5. recherche images et icones gratuits
    Par sam01 dans le forum Webdesign & Ergonomie
    Réponses: 2
    Dernier message: 11/12/2007, 10h35

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