Fichier externe en php
Fermé
MOOVe
-
24 juil. 2003 à 16:17
MOOVe Messages postés 6 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 28 août 2003 - 5 août 2003 à 16:54
MOOVe Messages postés 6 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 28 août 2003 - 5 août 2003 à 16:54
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 rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
- Chkdsk disque dur externe - Guide
9 réponses
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
24 juil. 2003 à 16:32
24 juil. 2003 à 16:32
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
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
24 juil. 2003 à 18:19
24 juil. 2003 à 18:19
Que n'as-tu point compris ?
MOOVe
Messages postés
6
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
28 août 2003
1 août 2003 à 15:39
1 août 2003 à 15:39
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
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
1 août 2003 à 15:49
1 août 2003 à 15:49
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).
MOOVe
Messages postés
6
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
28 août 2003
1 août 2003 à 16:23
1 août 2003 à 16:23
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
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
1 août 2003 à 17:00
1 août 2003 à 17:00
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"; }
MOOVe
Messages postés
6
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
28 août 2003
1 août 2003 à 17:07
1 août 2003 à 17:07
Merci beaucoup...je crois que je viens d'avoir le declic ;-)
_________________________________________________________
MOOVe
_________________________________________________________
MOOVe
MOOVe
Messages postés
6
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
28 août 2003
5 août 2003 à 16:54
5 août 2003 à 16:54
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