Fichier externe en php
MOOVe
-
MOOVe Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
MOOVe Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
Salut,
je vous mets un etat des lieux :
j'ai une table dans une BD MySQL qui continent les colonnes ID, Title, Ficname, StampTime
la colonne ficname contient le nom de fichiers texte
je cherche en PHP à lire tous les enregs de la table, et à afficher le resultat dans un tableau (ca je sais faire) mais pour la colonne ficname, je voudrais obtenir le contenu des fichiers texte (ca je sais pas faire)
quelqu'un peut m'aider ???
ps: j'ai fait une recherche mais j'ai rien trouvé sur ce sujet...
je vous mets un etat des lieux :
j'ai une table dans une BD MySQL qui continent les colonnes ID, Title, Ficname, StampTime
la colonne ficname contient le nom de fichiers texte
je cherche en PHP à lire tous les enregs de la table, et à afficher le resultat dans un tableau (ca je sais faire) mais pour la colonne ficname, je voudrais obtenir le contenu des fichiers texte (ca je sais pas faire)
quelqu'un peut m'aider ???
ps: j'ai fait une recherche mais j'ai rien trouvé sur ce sujet...
A voir également:
- Fichier externe en php
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
9 réponses
C'est du PHP après avoir exécuté ta requête SQL et stocké le résultat.
Pour chaque enregistrement de ta base récupérés, il faut que tu fasses un fopen() puis fread() de ton fichier... : http://fr3.php.net/manual/fr/function.fread.php
Pour chaque enregistrement de ta base récupérés, il faut que tu fasses un fopen() puis fread() de ton fichier... : http://fr3.php.net/manual/fr/function.fread.php
Ce que je n'ai pas compris, c'est comment tu utilises la valeur lu dans la table pour acceder au fichier...et pour chaque enreg. J'arrive parfaitement à comprendre le process mais il me manque la technique pour y parvenir...
_________________________________________________________
MOOVe
_________________________________________________________
MOOVe
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dans ta table MySQL, tu stockes les noms de fichier (exemple: donnees.txt).
Une fois que tu as récupéré le nom du fichier dans $nom_fichier (grace à une requête : SELECT Ficname FROM table), tu spécifies le chemin d'accès à ton image (path) :
Maintenant il ne te reste plus qu'à ouvrir le fichier $fichier : "/repertoire/donnees.txt"
Puis le lire (fread()) et l'afficher (print).
Une fois que tu as récupéré le nom du fichier dans $nom_fichier (grace à une requête : SELECT Ficname FROM table), tu spécifies le chemin d'accès à ton image (path) :
$fichier = "/repertoire/".$nom_fichier;
Maintenant il ne te reste plus qu'à ouvrir le fichier $fichier : "/repertoire/donnees.txt"
fopen($fichier);
Puis le lire (fread()) et l'afficher (print).
Merci de ta reponse, je comprends bien ton exemple mais en fait je modifie ce code :
Et je ne sais pas comment a partir de la (dans le foreach) je recupere la valeur de chaque enregistrement de la colonne ficname pour lire le fichier externe...
_________________________________________________________
MOOVe
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { print "\t<tr>\n"; foreach ($line as $col_value) { print "\t\t<td class=$lig $col_value </td>\n"; } print "\t</tr>\n";
Et je ne sais pas comment a partir de la (dans le foreach) je recupere la valeur de chaque enregistrement de la colonne ficname pour lire le fichier externe...
_________________________________________________________
MOOVe
Je ne sais pas comment l'adapter simplement avec ton code mais regarde ceci :
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { print "\t<tr>\n"; $fd = fopen($line[Ficname]); $contenu = fread($fd); fclose($fd); print "\t\t<td> $contenu </td>\n"; print "\t</tr>\n"; }
Merci beaucoup...je crois que je viens d'avoir le declic ;-)
_________________________________________________________
MOOVe
_________________________________________________________
MOOVe
si ca peux aider quelqu'un voila comment je me suis debrouillé...
_________________________________________________________
MOOVe
$result=mysql_query($sql_query); while ($line = mysql_fetch_array($result, MYSQL_BOTH)) { print " <tr> "; $sujet = $line[0] ; $fichier = ".\news\" . $line["ficname"]; $fd = fopen("$fichier", "r"); $contenu = nl2br(fread($fd, filesize ($fichier))); fclose($fd); $ndate = $line[2]; print " <td class=$lig $sujet </td> "; print " <td class=$lig $contenu </td> "; print " <td class=$lig $ndate</td> "; print " </tr> "; }
_________________________________________________________
MOOVe