Création fichier avec PHP --> BaseDeDonnées
Résolu
Quedza
Messages postés
242
Date d'inscription
Statut
Membre
Dernière intervention
-
Quedza Messages postés 242 Date d'inscription Statut Membre Dernière intervention -
Quedza Messages postés 242 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrais envoyer sur base de données un fichier CSV créé avec PHP, et cela immédiatement après la création automatique, afin de pouvoir télécharger une copie depuis la base de donnée quand cela me chante.
Pour le moment, je n'arrive qu'à créer le fichier CSV et à proposer le téléchargement du fichier à l'utilisateur.
Pour tout avouer, je voudrais aussi envoyer simultanément ce fichier CSV en pièce jointe sur boîte e-mail.
Un grand merci pour toute aide.
Laurent
Je voudrais envoyer sur base de données un fichier CSV créé avec PHP, et cela immédiatement après la création automatique, afin de pouvoir télécharger une copie depuis la base de donnée quand cela me chante.
Pour le moment, je n'arrive qu'à créer le fichier CSV et à proposer le téléchargement du fichier à l'utilisateur.
Pour tout avouer, je voudrais aussi envoyer simultanément ce fichier CSV en pièce jointe sur boîte e-mail.
Un grand merci pour toute aide.
Laurent
A voir également:
- Création fichier avec PHP --> BaseDeDonnées
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
14 réponses
Ok. Alors pour le stockage du CSV il y a deux pistes :
1. Stocker uniquement le chemin vers le fichier dans un champ varchar.
2. Stocker le fichier lui-même sous forme d'un champs Blob.
Pour l'envoi de mail via PHP, il y a pas mal de documentation là dessus, je te laisse chercher. Il te suffira de lancer l'envoi de mail juste après le INSERT INTO en base de donnée.
1. Stocker uniquement le chemin vers le fichier dans un champ varchar.
2. Stocker le fichier lui-même sous forme d'un champs Blob.
Pour l'envoi de mail via PHP, il y a pas mal de documentation là dessus, je te laisse chercher. Il te suffira de lancer l'envoi de mail juste après le INSERT INTO en base de donnée.
Merci de t'être arrêté sur mon problème.
Je n'arrive qu'à proposer un fichier de résultats au surfeur qui s'est amusé à faire mon jeu.
Mon problème est que je ne sais pas comment copier le même fichier de résultat sur la base de donnée et dans la boîte aux lettres (en pièce jointe puisque c'est un fichier).
Je n'arrive qu'à proposer un fichier de résultats au surfeur qui s'est amusé à faire mon jeu.
Mon problème est que je ne sais pas comment copier le même fichier de résultat sur la base de donnée et dans la boîte aux lettres (en pièce jointe puisque c'est un fichier).
de quel forme sont tes résultats ?
normalement tu as juste a ajouter les résultats dans la bdd et c'est tout
normalement tu as juste a ajouter les résultats dans la bdd et c'est tout
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Voilà.
...
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=".$resultat.".csv");
print $fichier;
exit;
De cette façon, quand la page qui contient ce bout de code et appelée, elle propose le téléchargement du fichier CSV. J'aimerai pouvoir mettre ce fichier sur la base de donnée (accompagné d'autres infos) avec une simple requête SQL. Est-ce possible ? Ensuite, l'envoi de ce même fichier dans une boîte aux lettre est moins utile...
...
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=".$resultat.".csv");
print $fichier;
exit;
De cette façon, quand la page qui contient ce bout de code et appelée, elle propose le téléchargement du fichier CSV. J'aimerai pouvoir mettre ce fichier sur la base de donnée (accompagné d'autres infos) avec une simple requête SQL. Est-ce possible ? Ensuite, l'envoi de ce même fichier dans une boîte aux lettre est moins utile...
Désolé ; en effet, je n'avais pas vu ton message. Merci. J'avais juste répondu à Vordano avec le lien de la boîte e-mail qui m'a tout de suite dirigé vers le formulaire de réponse.
Mais au niveau de compréhension dans lequel je me trouve, cela ne m'avance guère...
Mais d'après ce que j'ai compris, selon toi, il suffirait de mettre '.$resultat.'.csv' dans un requête d'importation pour que le fichier soit présent dans un colonne de type blob ? Est-ce que je pourrais le télécharger au format CSV lors d'une requête du contenu de ma table ?
Mais au niveau de compréhension dans lequel je me trouve, cela ne m'avance guère...
Mais d'après ce que j'ai compris, selon toi, il suffirait de mettre '.$resultat.'.csv' dans un requête d'importation pour que le fichier soit présent dans un colonne de type blob ? Est-ce que je pourrais le télécharger au format CSV lors d'une requête du contenu de ma table ?
@Anoen :
D'autant plus que ta première proposition est celle qui résoudrait probablement le plus facilement son problème...
@Quedza
Comme l'a dit Anoen, je trouve que la façon la plus simple de "stocker" ton fichier dans ta base de donnée, afin de pouvoir le récupérer facilement, est de simplement enregistrer le chemin qui mène vers le fichier sur ton serveur.
D'autant plus que ta première proposition est celle qui résoudrait probablement le plus facilement son problème...
@Quedza
Comme l'a dit Anoen, je trouve que la façon la plus simple de "stocker" ton fichier dans ta base de donnée, afin de pouvoir le récupérer facilement, est de simplement enregistrer le chemin qui mène vers le fichier sur ton serveur.
Voici une très bon exemple :
http://www.php-mysql-tutorial.com/wikis/mysql-tutorials/uploading-files-to-mysql-database.aspx
Je ne détaillerai rien ici, c'est à toi de chercher et de comprendre comment ça fonctionne.
http://www.php-mysql-tutorial.com/wikis/mysql-tutorials/uploading-files-to-mysql-database.aspx
Je ne détaillerai rien ici, c'est à toi de chercher et de comprendre comment ça fonctionne.
Merci, Dead et Anoen...
Je regarderai ça demain.
On me demande de stocker les fichiers, et non faire de simples liens...
Bonne soirée.
Je regarderai ça demain.
On me demande de stocker les fichiers, et non faire de simples liens...
Bonne soirée.
Stocker des fichiers pleins en db c'est jamais top. Le lien que je t'ai donné te permettra de faire ce que tu veux.
J'ai cru comprendre en le visionnant rapidement.
Anoen : Tu es sage (c'est bien mieux de me laisser trouver moi-même que de me balancer un code tout cuit ici, même s'il marche), mais je trouve que ta façon de me dire que tu ne me détailles pas pour mon bien est un peu sèche...
Bonne soirée !!! Je pense qu'il y a des problèmes autrement compliqués...
Anoen : Tu es sage (c'est bien mieux de me laisser trouver moi-même que de me balancer un code tout cuit ici, même s'il marche), mais je trouve que ta façon de me dire que tu ne me détailles pas pour mon bien est un peu sèche...
Bonne soirée !!! Je pense qu'il y a des problèmes autrement compliqués...
On ne stocke pas des fichiers dans une base de données, juste le nom de ces fichiers.
Tu stockes donc par exemple dans la bdd le nom de ton fichier exemple.csv
ensuite via php
$fichier = 'exemple.csv"
http://www.tonsite.com./fichiers/<?php echo $fichier; ?>
Tu stockes donc par exemple dans la bdd le nom de ton fichier exemple.csv
ensuite via php
$fichier = 'exemple.csv"
http://www.tonsite.com./fichiers/<?php echo $fichier; ?>