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

Discussion :

Gérer les invités sur mon site


Sujet :

Symfony PHP

  1. #1
    Membre régulier
    Femme Profil pro
    Développeur Web
    Inscrit en
    octobre 2010
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : octobre 2010
    Messages : 365
    Points : 96
    Points
    96
    Par défaut Gérer les invités sur mon site
    Bonjour,


    J'ai crée un site de création de facture c'est-à-dire tous les utilisateurs doivent être connectés pour pouvoir créer et télécharger leurs factures.
    Ce que je veux c'est de permettre aux visiteurs de pouvoir créer et télécharger les factures sans se connecter et leurs factures ne serons pas sauvegarder.
    Voici ce que j'essaie de faire au niveau du controller :






    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    <?php
     
     
     
     
    namespace App\Controller;
     
     
     
     
    use App\Entity\Facture;
    use App\Form\FactureType;
    use Spipu\Html2Pdf\Html2Pdf;
    use App\Service\T_HTML2PDF;
    use App\Repository\FactureRepository;
    use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
    use Symfony\Component\HttpFoundation\Request;
    use Symfony\Component\HttpFoundation\Response;
    use Symfony\Component\Routing\Annotation\Route;
     
     
     
     
    /**
     * @Route("/facture")
     */
    class FactureController extends AbstractController
    {
     
     
     
     
    //-----------------------------------------------
    /**
         * @Route("/guest_new", name="guest_facture_new", methods={"GET","POST"})
         */
        public function guestnew(Request $request): Response
        {
            $facture = new Facture();
            //$facture->setUser($this->getUser());
     
     
     
     
            $form = $this->createForm(FactureType::class, $facture);
            $form->handleRequest($request);
     
     
     
     
            if ($form->isSubmitted() && $form->isValid()) {
     
     
     
     
              return $this->redirectToRoute('facture_pdf');
            }
     
     
     
     
            return $this->render('guest/new.html.twig', [
                'facture' => $facture,
                'form' => $form->createView(),
            ]);
     
      }
    merci
    Formatrice - Web développeuse - WebMarketing - Recrutement
    Site O'ClockWeb : http://oclockweb.cvflashjob.com/
    Mon Facebook : https://www.facebook.com/minkoueobame

  2. #2
    Membre extrêmement actif Avatar de Sodium
    Femme Profil pro
    Développeuse web
    Inscrit en
    avril 2014
    Messages
    1 692
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeuse web

    Informations forums :
    Inscription : avril 2014
    Messages : 1 692
    Points : 1 732
    Points
    1 732
    Par défaut
    Il faut que tu poses une question ou au moins que tu précises sur quoi tu bloques si tu veux de l'aide, nous ne sommes pas des devins.

  3. #3
    Membre régulier
    Femme Profil pro
    Développeur Web
    Inscrit en
    octobre 2010
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : octobre 2010
    Messages : 365
    Points : 96
    Points
    96
    Par défaut
    En fait j'ai crée un site avec symfony 4.2 sur lequel les utilisateurs peuvent créer, voir et télécharger leurs factures. Mais chaque utilisateurs doit être connecté pour créer des facture et ça marche bien. Ce que je veux maintenant c'est que les utilisateurs invités(non connecté) puisse aussi créer des factures et les télécharger et leurs factures n'est pas enregistrées en base.
    Voici le controller pour la création et le téléchargement des factures pour les utilisateurs connectés:
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    <?php
    
    
    namespace App\Controller;
    
    
    use App\Entity\Facture;
    use App\Form\FactureType;
    use Spipu\Html2Pdf\Html2Pdf;
    use App\Service\T_HTML2PDF;
    use App\Repository\FactureRepository;
    use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
    use Symfony\Component\HttpFoundation\Request;
    use Symfony\Component\HttpFoundation\Response;
    use Symfony\Component\Routing\Annotation\Route;
    
    
    /**
     * @Route("/facture")
     */
    class FactureController extends AbstractController
    {
        /**
         * @Route("/", name="facture_index", methods={"GET"})
         */
        public function index(FactureRepository $factureRepository): Response
        {
            $userFactures = $factureRepository->findBy(['user' => $this->getUser()]);
    
    
            return $this->render('facture/index.html.twig', [
                'factures' => $userFactures,
            ]);
        }
    
    
        /**
         * @Route("/new", name="facture_new", methods={"GET","POST"})
         */
        public function new(Request $request): Response
        {
            $facture = new Facture();
            $facture->setUser($this->getUser());
    
    
            $form = $this->createForm(FactureType::class, $facture);
            $form->handleRequest($request);
    
    
            if ($form->isSubmitted() && $form->isValid()) {
                $entityManager = $this->getDoctrine()->getManager();
                $entityManager->persist($facture);
                $entityManager->flush();
    
    
                return $this->redirectToRoute('facture_index');
            }
    
    
            return $this->render('facture/new.html.twig', [
                'facture' => $facture,
                'form' => $form->createView(),
            ]);
        }
    
    
       
    
    
        /**
         * @Route("/{id}", name="facture_show", methods={"GET"})
         */
        public function show(Facture $facture): Response
        {
            return $this->render('facture/show.html.twig', [
                'facture' => $facture,
            ]);
        }
    
    
        /**
         * @Route("/{id}/edit", name="facture_edit", methods={"GET","POST"})
         */
        public function edit(Request $request, Facture $facture): Response
        {
            $form = $this->createForm(FactureType::class, $facture);
            $form->handleRequest($request);
    
    
            if ($form->isSubmitted() && $form->isValid()) {
                $this->getDoctrine()->getManager()->flush();
    
    
                return $this->redirectToRoute('facture_index', [
                    'id' => $facture->getId(),
                ]);
            }
    
    
            return $this->render('facture/edit.html.twig', [
                'facture' => $facture,
                'form' => $form->createView(),
            ]);
        }
    
    
        /**
         * @Route("/{id}", name="facture_delete", methods={"DELETE"})
         */
        public function delete(Request $request, Facture $facture): Response
        {
            if ($this->isCsrfTokenValid('delete'.$facture->getId(), $request->request->get('_token'))) {
                $entityManager = $this->getDoctrine()->getManager();
                $entityManager->remove($facture);
                $entityManager->flush();
            }
    
    
            return $this->redirectToRoute('facture_index');
        }
    
    
        /**
       * @Route("facture_pdf/{id}", name="facture_pdf", methods={"GET"})
         */
        public function showPdf(Facture $facture): Response
        {
            $template = $this->render('facture/pdf.html.twig', [
                'facture' => $facture,
            ]);
    
    
          $html2pdf = new T_Html2Pdf('P', 'A4', 'fr', true, 'UTF-8', array(10, 15, 10, 15));
          $html2pdf->create('P', 'A4', 'fr', true, 'UTF-8', array(10, 15, 10, 15));
    
    
          return $html2pdf->generatePdf($template, "facture");
        }
    
    
    }
    Formatrice - Web développeuse - WebMarketing - Recrutement
    Site O'ClockWeb : http://oclockweb.cvflashjob.com/
    Mon Facebook : https://www.facebook.com/minkoueobame

Discussions similaires

  1. Accélérer les téléchargements sur mon site
    Par legide dans le forum Débuter
    Réponses: 2
    Dernier message: 01/02/2011, 02h37
  2. comment aspirer les liens "embed" pour les utiliser sur mon site
    Par stephanech dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 03/08/2010, 08h56
  3. Charger les images sur mon site
    Par zapata31 dans le forum Débuter
    Réponses: 5
    Dernier message: 03/07/2009, 15h06
  4. Problème d'entête pour les news sur mon site
    Par jounax dans le forum Fichiers
    Réponses: 1
    Dernier message: 06/01/2008, 11h11
  5. Comment bloquer les photos sur mon site
    Par footeuse13 dans le forum Sécurité
    Réponses: 5
    Dernier message: 08/08/2007, 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