Laravel 6

Enregistrer un pdf dans une base de données

Avatar de mr_debutant
mr_debutant

Bonjour à tous,

J'ai une petite question a vous posez, je sais pas si c'est possible mais est-ce qu'il est possible d'enregistrer un fichier pdf dans une table mysql. Si oui, pouvez-vous m'éclairer sur ce sujet parce que j'ai beau chercher sur internet mais je trouve rien de concret.

Merci d'avance ^^

Posté il y a 1 mois
Avatar de Mélina
Mélina

Bonjour, Il est possible d'enregistrer des fichiers dans ta base de donnée sous conditions que ton champ en base soit de type BLOB (données brutes). Il est toutefois déconseillé de stocker des fichiers binaires dans une base de donnée car tu vas rapidement l'alourdir. Bonne soirée

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

d'accord, en fait ce que je voudrais mettre en place ça serait un fichier pdf dans lequel on retrouve l'adresse de la personne qui vient de commander un produit dans le but de simplement l'imprimer lors de ma gestion de commandes.

Sais-tu comment je pourrais m'y prendre pour rajouter un pdf dans une table ?

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

Salut,

Pourquoi ne pas simplement l'enregistrer dans un dossier et juste garder l'adresse dans la base ?

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

Je preférerais que ce soit un pdf ... c'est si mauvais que ça de mettre un pdf dans une table ?

J'ai ce code ci mais y a un prblème et je sais pas qu'elle est ce problème ..

    public function pdfAdresse()
    {
        $pdf_create = User::find(Auth()->user()->id);

        return $pdf_create = Order::create([
            'adresse' => $pdf[PDF::loadView('pdf')];
            return $pdf->download('adresse.pdf'); 
        ]); 
        $pdt_create->save()
    }

PS: après si c'est plus simple avec un lien je suis preneur ^^

Posté il y a 1 mois
Avatar de CinquièmeDimension
CinquièmeDimension

Salut,

Pour les boutiques e-commerce, les pdf ne sont pas enregistrés mais générés à la volée àà partir des infos de la base. Ainsi, quand l'utilisateur veut l'imprimer, il est généré direct.

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

Oui j'ai déjà mis un système comme cela pour les factures pour les utilisateurs, cependant, ce que j'essaye de mettre en place tant bien que mal est que le pdf (ou un lien vers le pdf) soit enregistré dans une table (la table pour la gestion de commande) pour que je puisse moi-même l'imprimer.

Posté il y a 1 mois
Avatar de nash
nash

Pourrais-tu nous detailler ta methode point par point

public function pdfAdresse()
    {
        $pdf_create = User::find(Auth()->user()->id);

        return $pdf_create = Order::create([
            'adresse' => $pdf[PDF::loadView('pdf')];
            return $pdf->download('adresse.pdf'); 
        ]); 
        $pdt_create->save()
    }

Ce bout code est completement obscur

Merci

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

Franchement je ne trouve aucune justification à mémoriser un pdf dans une base, déjà que dans un dossier c'est aussi rarement utile (on peut mémoriser des factures par exemple) parce qu'il est si facile de générer un pdf. Je vois une base de données comme un lieu de stockage de données brutes, tout ce qui peut être produit par codage n'y a pas sa place. Enfin c'est mon avis...

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

Réponse à nash : Bah en fait je voudrais récupérer l'id de l'utilisateur pour avoir accès aux champs concernant son adresse qu'il a préalablement enregistré dans la table User et je voudrais créer un pdf qui contient les champs dans lequel on retrouve les infos concernant l'adresse Je débute dans Laravel, soyez un peu indulgent ^^

Réponse à bestmomo : Après s'il y a une autre méthode (enregistrer juste un lien) je suis totalement preneur, je pensais qu'en enregistrant un pdf en base de données c'était la meilleur solution mais en fait c'est pas trop le cas ^^

Posté il y a 1 mois
Avatar de nash
nash

Je rejoins completment Bestmomo et CinquiemeDimension dans leurs propos. Un pdf est géneré à la volé et le stockage est inutile sauf dans des cas très particuliers (exemple signature electronique de mandat sepa, ...).

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

ah d'accord, je ne savais pas, excusez-moi, ducoup vous pourriez me guider pour mettre en place ce que je souhaite s'il vous plaît ?

Posté il y a 1 mois
Avatar de mr_debutant
mr_debutant

Mercii beaucoup ^^

Posté il y a 1 mois

Vous ne pouvez pas répondre à ce sujet.