Historique de facture [PHP/MYSQL] - PHP - Programmation
Marsh Posté le 21-02-2012 à 00:20:08
Salut
tu peux déjà faire une sauvegarde du fichier .pdf dans un dossier représentant le mois de l'année en cour.
De là, je me pencherais vers les possibilités d'un CRON qui renvoi tout ça tout les débuts de mois :
http://www.google.fr/search?q=cron [...] 15&bih=656
Marsh Posté le 21-02-2012 à 10:56:43
Je travaille sur un projet similaire. Je suis parti sur la solution :
- génération des factures du mois dans une table dédiée (historie de gagner de la place) par un script. En l'occurrence, il sera exécuté manuellement par un admin (c'est un choix mais l'option via le cron marcherait tout aussi bien)
- pour chaque facture générée en BD, générer le PDF et l'envoyer par mail à son destinataire en pièce jointe.
- suppression des fichiers PDF
Question : t'utilises quoi pour faire le PDF?
Marsh Posté le 21-02-2012 à 12:08:40
Alors déjà merci à vous pour vos réponses. Hier je cherchais dans mon coin. J'ai lu des choses sur cron effectivement pour lancer un scripte automatiquement, et je dois dire que sa m'interesse assez.
Pour mon PDF j'utilise FPDF. La personne a à sa disposition un lien, lors du clic le PDF est generé en fonction de ce qu'il y a actuellement dans la base de donnée. C'est donc une facture instantanée.
Le but: creer une facture définitive chaque fin ou début de mois peu importe, l'envoyer à une base de donnée, et ensuite oui par mail j'y avais pensé rufo ( en fichier joint ).
Mais comment stocker un PDF en en DB?
J'ai regarder aussi du coté des jointures car il faut générer un PDF pour tout les membres contenus dans la BD
Marsh Posté le 21-02-2012 à 13:00:23
FPDF, c'est très bas niveau. Les outils que j'ai mentionnés dans ce topic devraient t'intéresser : http://forum.hardware.fr/hfr/Progr [...] 4828_1.htm
Sinon, on met pas un pdf dans une BD (ie, on met pas un fichier dans une BD). On stocke les méta données dans la BD (genre, id, nom,...) et éventuellement le chemin où il est stocké sur le HDD si celui-ci n'est pas calculable ou défini dans un fichier de conf...
Marsh Posté le 21-02-2012 à 13:05:42
Ok la base de donnée cela me paraissait étrange aussi d'y stocker un fichier. Pour FPDF que veux tu dire par là?
Parce que j'ai déjà des resultats avec, la facture est créée et sa roule pas mal.
Toi tu cherchais à convertir une page html/css en PDF c'est ça?
Marsh Posté le 21-02-2012 à 13:51:38
Ben en général, dans le cas d'un appli web, on génère des pages html pour l'IHM. Y'a donc moins de travail à faire si ce qu'on affiche à l'IHM peut être converti en pdf plutôt que de devoir refaire tout le boulot pour générer le PDF.
Perso, je passe souvent par le XML puis transformation XSLT pour générer mon IHM ou ma vue avant impression. Pour faire le PDF, je n'ai donc qu'à rajouter une ligne de code pour générer mon pdf à partir de ma vue avant impression en HTML. Et dans mon css, je rajoute des règles pour le @media print, les autres règles étant pour le @media screen.
Et puis, perso, je trouve plus facile de créer, par ex, des tableaux complexes en HTML plutôt qu'en PDF... D'une manière générale, je trouve plus facile de faire une mise en page avec HTML/CSS qu'en direct en PDF Donc avoir un outil qui me convertit du html/css en PDF, c'est très pratique
Marsh Posté le 21-02-2012 à 14:30:35
Ok je comprends.
Bon je suis clairement pas à ton niveau ( je suis un jeune padawan ), mais c'est très agréable de discuter avec quelqu'un qui sait de quoi il parle, par exemple si j'avais su cela avant, je ne me serais pas pris la tête avec la création d'un pdf avec FPDF. Bon maintenant que c'est fait c'est une bonne chose, ça ma appris des trucs.
Puisqu'il fonctionne je pense que je vais garder mon travail.
Sinon, j'ai fais quelques tests avec cron ça fonctionne nickel. Maintenant il faut que je trouve un moyen, avec un script PHP, d'archiver tout ce beau monde tout les mois.
Pour que ce soit clair voici ma base à l'heure actuelle:
j'ai en tout 15 colonnes:
ID pseudo pass nom prenom adresse ville cp adressmail IDclient rfid poid prix_ht prix_ttc date_enregistrement
il faudrais que tout les mois je stocks la factures ( donc une système d'archive ) mais que les factures des mois précédentes reste accessibles. Et d'une année à l'autre on RAZ la table ( pour ça CRON )
Donc le PDF se creer bien quand l'utilisateur le demande ( permet d'avoir une facture instantannée ). Il me reste à faire tout les debut de mois la facture final de manière automatique.
Bon la créer je le fais déjà ya pas de souci, je ramasse avec cron dans ma BD le prix HT et TTC je le stock et basta. Mais c'est surtout pour la BD. Je fais comment je creer une nouvelle table? Je lis actuellement des choses sur les jonctions penses-tu que cela peut m'aider.
En tout cas merci de ta patience, ça ne dois pas être facil de discuter avec un newbi comme moi en SQL/PHP
Marsh Posté le 23-02-2012 à 23:56:00
Bon solution trouvée, j'ai utilisé les jonctions SQL pour trouver des occurrences dans mes bases. Tout roules.
Merci à vous.
Marsh Posté le 20-02-2012 à 19:24:31
Bonjour tout le monde.
Voilà j'ai créé un site qui gère des utilisateurs avec nom prénom adresse pseudo pass...etc.. Pour chaque personne j'arrive à creer une facture au format pdf. Elle contient donc les informations et le prix à un instant T ( c'est à dire quand ils cliquent ).
Mon but est d'arriver à creer un genre d'historique, c'est à dire que l'utilisateur puisse demander à voir les factures qui on été créées les mois précédant.
Par exemple au debut de chaque mois, la facture serait envoyée dans une base SQL et sur le site on verrait afficher les mois pour lequel une facture est dispo.
Ma question; comment je pourrais réalisé cela?
J'ai penser à utiliser la date et déclencher un envoi en base de données des factures tout les 1er du mois, mais je ne sais pas le faire automatiquement et sans que l'utilisateur ai à se connecter.
Ensuite au niveau de la base sql je gère ça comment? Je fais une table mois? Bref je ne sais pas trop.
Merci d'avance pour vos coups de mains.