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 :

Ecrire dans un fichier texte [2.x]


Sujet :

Symfony PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut Ecrire dans un fichier texte
    Salut à tous,

    Je voudrai sauvegarder les informations d'un formulaire dans un fichier texte, au lieu d'une base de données. C'est à dire après validation du formulaire, qu'il enregistre les informations dans un fichier texte au lieu de la base de données.
    Est ce qu'il existe des bundles avec cette fonction ou si quelqu’un peut me donner des pistes pour que je le code moi même.

    Merci d'avance,

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    fait un file_puts_contents

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    fait un file_puts_contents
    Je suis débutant en symfony2. Peux-tu m'indiquer ou je dois le mettre, dans mon contrôleur ?
    L'idée est d'enregistrer les informations d'un formulaire dans un fichier texte, en le créant évidemment s'il n'existe pas.

    L'action de création dans mon contrôleur

    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
    public function createAction()
        {
            $entity  = new Request();
            $request = $this->getRequest();
            $form    = $this->createForm(new RequestType(), $entity);
            $form->bindRequest($request);
     
            if ($form->isValid()) {
                $em = $this->getDoctrine()->getEntityManager();
                $em->persist($entity);
                $em->flush();
     
                return $this->redirect($this->generateUrl('request_show', array('id' => $entity->getId())));
            }
     
            return $this->render('MyAppNameBundle:Request:new.html.twig', array(
                'entity' => $entity,
                'form'   => $form->createView()
            ));
        }
    Il fait appel à mon formulaire

    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
     public function buildForm(FormBuilder $builder, array $options)
        {
            $builder
                ->add('date',       'date')
                ->add('firstname',  'text')
                ->add('lastname',   'text')
                ->add('mail',       'email')
            ;
        }
        public function getName()
        {
            return 'MyApp_Namebundle_requesttype';
        }
     
            public function getDefaultOptions(array $options)
            {
            return array (
                    'data_class' => 'MyApp\NameBundle\Entity\Request',);
            }

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    c'est pas du symfony2 mais du PHP de base, que je te conseil d'apprendre avant de te lancer dans un projet et encore plus pour faire du Symfony
    Quel est l’intérêt d’enregistrer les données dans un fichier texte sachant que t'as déjà une base ?

    ps : ton render est inutile

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    pour gérer les mots de passe ton .htaccess ?

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    pour gérer les mots de passe ton .htaccess ?
    Oui en une sorte, autoriser l'accès en insérant le nom d'utilisateur dans le fichier .htaccess c'est à dire en faisant allow domain_name ou require user name_user

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    pas besoin de ça, active juste le http_basic, et met la base en provider
    http://symfony.com/doc/current/book/security.html

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    pas besoin de ça, active juste le http_basic, et met la base en provider
    http://symfony.com/doc/current/book/security.html
    Merci pour le lien.
    Par ailleurs, j'essaie de récupérer le contenu de mon formulaire dans un fichier texte avec la fonction file_put_contents. Après validation, je suis redirigé sur l'index et rien ne se passe. Ci dessous l'action dans le contrôleur.
    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
     public function createAction()
            {
            $entity  = new Request();
            $request = $this->getRequest();
            $form    = $this->createForm(new RequestType(), $entity);
            $form->bindRequest($request);
     
            if ($form->isValid()) {
               file_put_contents('results.json', json_encode($form));
     
    /**
    *           $em = $this->getDoctrine()->getEntityManager();
    *            $em->persist($entity);
    *           $em->flush();
    */
                return $this->redirect($this->generateUrl('request_show', array('id' => $entity->getId())));
            }
    J'ai demandé à mon meilleur ami "google" et pas de réponse.

    Est ce que quelqu'un a déjà utilisé cette fonction dans symfony2 ?

  9. #9
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    a quoi ça te sert ?
    de plus la ton fichier va s'enregistre au même niveau que ton controller

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    a quoi ça te sert ?
    de plus la ton fichier va s'enregistre au même niveau que ton controller
    Oui Justement, c'est un test, je vais le rediriger ailleurs plus tard. Mais pour le moment je n'ai rien dans le fichier c'est ça mon problème.
    Le but c'est de sauvegarder dans un fichier texte et dans la base de données.

  11. #11
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    tu peux pas faire ça, enfin uniquement si les valeurs sont simples (genre type text), et même pas sur que ça marche avec l'iterator, en tout cas je reparte ma question : quel est l'intérêt, parce que la j'en vois vraiment aucun ?

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    L'intérêt est qu'à la validation du formulaire (nom, prenom, adresse, ip etc...), qu'il me l'enregistre dans la base de données et insérer l'adresse ip dans un htaccess afin qu'il autorise la connexion d'un utilisateur à ce dossier. En insérant allow ip_adress et id dans l'htaccess.

  13. #13
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    je le redis y'a deja tout dans Symfony pour faire ça, pas besoin de bidouiller a écrire des fichiers

    regarde par la : http://symfony.com/doc/current/cookb...ty/voters.html

  14. #14
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Pas exactement ce que je voulais, mais ça pourrai m'aider avec quelques modifications peut être.

    Merci en tout cas.stealth35

  15. #15
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    oui la c'est une blacklist, toi tu veux une whitelist, y'a juste a inverser la cond

  16. #16
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Yeppppp

  17. #17
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut Récupérer les variables d'un formulaire
    Salut à tous,

    J'ai un problème de récupération de variable de mon formulaire. En effet je souhaite récupérer des variables de mon formulaire dans un fichier.
    Après la validation de mon formulaire j'ai mis cette fonction qui écrit tout le contenu du formulaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $file = 'emplacement'
    $request = $this->getRequest();
    $form    = $this->createForm(new RequestType(), $entity);
    $form->bindRequest($request);
     
    if ($form->isValid()) {
    file_put_contents($file, $request, FILE_APPEND | LOCK_EX );
    }
    Donc là il m'enregistre tout le formulaire dans le fichier, alors que j'ai simplement besoin de deux variables id et name
    Si quelqu'un peut m'aider! Merci

  18. #18
    Membre actif
    Avatar de The_Sorrow
    Homme Profil pro
    Informaticien multi-threadé
    Inscrit en
    Juin 2009
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Informaticien multi-threadé
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 119
    Points : 246
    Points
    246
    Par défaut
    Salut,

    ton objet permet-il de filtrer les champs que tu veux récupérer ?
    Sur ta ligne 3, je vois ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $request = $this->getRequest();
    Tu as peut-être moyen de ne récupérer que les champs voulus. Regarde les autres méthodes de ton objet.

  19. #19
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 79
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par The_Sorrow Voir le message
    Salut,

    ton objet permet-il de filtrer les champs que tu veux récupérer ?
    Sur ta ligne 3, je vois ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $request = $this->getRequest();
    Tu as peut-être moyen de ne récupérer que les champs voulus. Regarde les autres méthodes de ton objet.
    Oui effectivement ça permet de filtrer aussi.
    Quels autres méthodes par exemple, je ne te comprends pas.

    Par exemple dans mon formulaire j'ai les champs suivants
    public function buildForm(FormBuilder $builder, array $options)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     {
            $builder
    	    ->add('date',       'date')
                ->add('reference',  'integer')
                ->add('firstname',  'text')
                ->add('lastname',   'text');
    }
    Supposons que j'ai juste besoin du champ firstname ?
    J'ai vu plusieurs méthodes sur internet mais ça ne marche pas.

  20. #20
    Membre actif
    Avatar de The_Sorrow
    Homme Profil pro
    Informaticien multi-threadé
    Inscrit en
    Juin 2009
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Informaticien multi-threadé
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 119
    Points : 246
    Points
    246
    Par défaut
    De ce que tu me montre, j'ai cru comprendre que tu utilisais une classe. Du coup, je te suggérais de regarder les méthodes (les fonctions) de la dite classe, pour voir si il existait une méthode du genre :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    getField($fieldName) {}

    Est-ce que tu utilise un script spécifique ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. lire/ecrire dans un fichier texte
    Par mello dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 13/06/2006, 12h35
  2. [VB.net]ecrire dans un fichier text
    Par grand_prophete dans le forum Windows Forms
    Réponses: 12
    Dernier message: 04/05/2006, 16h37
  3. Réponses: 6
    Dernier message: 17/12/2005, 19h27
  4. [VB.NET] Ecrire dans un fichier texte...
    Par robert.michel9 dans le forum VB.NET
    Réponses: 5
    Dernier message: 04/12/2005, 14h35
  5. Ecrire dans un fichier text en MFC
    Par soufienne dans le forum MFC
    Réponses: 6
    Dernier message: 05/10/2005, 16h54

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