OVH Cloud OVH Cloud

affichage du contenu d'un fichier texte

6 réponses
Avatar
Toto Le Ouf
Bonsoir, je voudrais afficher le contenu d'un fichier texte sur ma page.
Je m'explique : je possède un script qui affiche les photos d'un répertoire
(diaporama). Les noms des photos (nom des fichiers) sont stockés dans un
tableau (javascript). A chaque photo est associé un commentaire. Les noms
des fichiers des commentaires sont également stockés dans un autre tableaux
(ex : photos[4]="./photos/photo4.jpg" et
commentaires[4]="./photos/commentaires/commentaires4.txt"). Je voudrais donc
pouvoir afficher le contenu de ces fichiers. Comment faire ? Php ? (je
n'arrive pas à inclure du javascript dans du php)
Des idées ?
Merci.
T.

6 réponses

Avatar
Olivier Miakinen

Bonsoir, je voudrais afficher le contenu d'un fichier texte sur ma page.
Je m'explique : je possède un script qui affiche les photos d'un répertoire
(diaporama). Les noms des photos (nom des fichiers) sont stockés dans un
tableau (javascript). A chaque photo est associé un commentaire. Les noms
des fichiers des commentaires sont également stockés dans un autre tableaux
(ex : photos[4]="./photos/photo4.jpg" et
commentaires[4]="./photos/commentaires/commentaires4.txt"). Je voudrais donc
pouvoir afficher le contenu de ces fichiers. Comment faire ? Php ? (je
n'arrive pas à inclure du javascript dans du php)
Des idées ?


Comment est initialisé ton tableau javascript ? Si c'est par des données
qui se trouvent sur le serveur web, alors tu dois pouvoir récupérer ces
données dans un script PHP et il n'y aura rien de plus simple que d'en
profiter pour lire le contenu du fichier pointé par $commentaires[4].

Si ce n'est pas possible, en dernier recours il te restera la solution
de faire une nouvelle requête HTTP POST vers le script PHP, en lui
passant tout le contenu de tes deux tableaux.

Avatar
ASM

Bonsoir, je voudrais afficher le contenu d'un fichier texte sur ma page.
Je m'explique : je possède un script qui affiche les photos d'un répertoire
(diaporama). Les noms des photos (nom des fichiers) sont stockés dans un
tableau (javascript). A chaque photo est associé un commentaire. Les noms
des fichiers des commentaires sont également stockés dans un autre tableaux
(ex : photos[4]="./photos/photo4.jpg" et
commentaires[4]="./photos/commentaires/commentaires4.txt"). Je voudrais donc
pouvoir afficher le contenu de ces fichiers. Comment faire ? Php ? (je
n'arrive pas à inclure du javascript dans du php)
Des idées ?
Merci.
T.


L'idéal serait que tu aies un fichier *.js
contenant :
commentaires = new Array()
commentaires[0] = 'blabla';
commentaires[1] = 'autre blabla';

etc ...

tu appelles ce fichier dans l'head comme d'hab
<script src="commentaires_xx.js" type="text/javascript"></script>

tu as dans le html du diaporama :
<div id="commentaires>
</div>

et dans ta fonction d'affichage :

document.getElementById('commentaires'].innerHTML = 'commentaires['+x+']';

où x est ton numéro de photo/commentaire

quelques diaporamas (automatiques) avec JS :
http://perso.wanadoo.fr/stephane.moriaux/internet/web_html/pass_vue/

--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************

Avatar
Toto Le Ouf
"ASM" a écrit dans le message de
news:



Bonsoir, je voudrais afficher le contenu d'un fichier texte sur ma page.
Je m'explique : je possède un script qui affiche les photos d'un
répertoire


(diaporama). Les noms des photos (nom des fichiers) sont stockés dans un
tableau (javascript). A chaque photo est associé un commentaire. Les
noms


des fichiers des commentaires sont également stockés dans un autre
tableaux


(ex : photos[4]="./photos/photo4.jpg" et
commentaires[4]="./photos/commentaires/commentaires4.txt"). Je voudrais
donc


pouvoir afficher le contenu de ces fichiers. Comment faire ? Php ? (je
n'arrive pas à inclure du javascript dans du php)
Des idées ?
Merci.
T.


L'idéal serait que tu aies un fichier *.js
contenant :
commentaires = new Array()
commentaires[0] = 'blabla';
commentaires[1] = 'autre blabla';

etc ...

tu appelles ce fichier dans l'head comme d'hab
<script src="commentaires_xx.js" type="text/javascript"></script>

tu as dans le html du diaporama :
<div id="commentaires>
</div>

et dans ta fonction d'affichage :

document.getElementById('commentaires'].innerHTML 'commentaires['+x+']';

où x est ton numéro de photo/commentaire

quelques diaporamas (automatiques) avec JS :
http://perso.wanadoo.fr/stephane.moriaux/internet/web_html/pass_vue/

--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************




Voila mon script en fait : (vous reconnaitrez peut-être le nom d'un éditeur
javascript bien connu...)

<html>
<head>
<title>DIAPORAMA</title>
</head>

<body link="#CCFF99" vlink="#CCFF99" alink="#CCFF99">
<DIV ID=ejs_photo_box></DIV>
<DIV ID=ejs_comm_box></DIV>
<SCRIPT LANGUAGE=JavaScript>
ejs_photo = new Array;
ejs_commentaire = new Array;
<?
$a = 0;
$handle = opendir("./../Crevoux");
while (($file = readdir($handle))!úlse) {
clearstatcache();
if($file!=".." && $file!="." && $file!="Commentaires")
{
echo "ejs_photo[$a] = './../Crevoux/$file';";
$a++;
}
}
closedir($handle);

$a=0;
$handle2 = opendir("./../Crevoux/Commentaires");
while (($file = readdir($handle2))!úlse) {
clearstatcache();
if($file!=".." && $file!=".")
{
echo "ejs_commentaire[$a] = './../Crevoux/Commentaires/$file';";
$a++;
}
}
closedir($handle2);

?>
function ejs_aff_photos(num)
{
if(document.getElementById)
{
ejs_fin = "";
if(num!=0)
ejs_fin += "<font face=verdana size=-2> <A HREF=#
onClick='ejs_aff_photos("+(num-1)+");return(false)'>&lt;
Précédent</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
if(num!=(ejs_photo.length-1))
ejs_fin += "<font face=verdana size=-2> <A HREF=#
onClick='ejs_aff_photos("+(num+1)+");return(false)'>Suivant &gt;</A>";
document.getElementById("ejs_photo_box").innerHTML = "<CENTER><IMG
SRC='"+ejs_photo[num]+"' BORDER=0><BR>"+ejs_fin+"<BR><form
ACTION=modif_commentaire.php METHOD=POST><input type=submit name=fichier
value="+ejs_commentaire[num]+"></form></CENTER>";
document.getElementById("ejs_comm_box").innerHTML ""+ejs_commentaire[num]+"";
}
}
window.onload = new Function("ejs_aff_photos(0)")
</SCRIPT>
</body>
</html>


Je voudrais que dans la div "ejs_comm_box" il affiche le contenu du fichier
texte et non pas le nom de ce fichier.
Merci.
T.
PS : Ne pas faire attention au formulaire dans la premiere div, il sert à
autre chose.


Avatar
Olivier Miakinen
Tout d'abord, était-il utile de recopier l'intégralité de l'article
précédent avant d'y répondre ? D'autant que tu ne réponds à aucun point
de ce qu'écrivait ASM. Il n'est pas interdit, et il est même recommandé,
de faire du ménage dans les citations pour ne laisser que ce qui est utile.

Ça tombe bien, je vais faire du ménage pour te répondre.


Voila mon script en fait : [...]

<?
[...]
echo "ejs_commentaire[$a] = './../Crevoux/Commentaires/$file';";
[...]
?>

Je voudrais que dans la div "ejs_comm_box" il affiche le contenu du fichier
texte et non pas le nom de ce fichier.


Remplace la ligne ci-dessus par :
echo "ejs_commentaire[$a] = '";
readfile($file);
echo "';";
Attention, cependant, cela ne marchera que si le fichier ne contient pas
d'apostrophe droite ('). S'il en contient mais pas de guillemets droits,
tu peux écrire :
echo "ejs_commentaire[$a] = "";
readfile($file);
echo '";';

Voilà, j'espère en outre que ma réponse t'éclairera sur la façon de bien
citer. Tu as d'autres explications ici :
<http://www.giromini.org/usenet-fr/repondre.html>.

Cordialement,
--
Olivier Miakinen

Avatar
Toto Le Ouf
"Olivier Miakinen" a écrit
Remplace la ligne ci-dessus par :
echo "ejs_commentaire[$a] = '";
readfile($file);
echo "';";
Attention, cependant, cela ne marchera que si le fichier ne contient pas
d'apostrophe droite ('). S'il en contient mais pas de guillemets droits,
tu peux écrire :
echo "ejs_commentaire[$a] = "";
readfile($file);
echo '";';


Merci beaucoup. Maintenant ça fonctionne.
T.

Avatar
Olivier Miakinen
Le 02/02/2005 14:27, Toto Le Ouf me répondait :

Merci beaucoup. Maintenant ça fonctionne.


De rien, et un grand merci pour ta façon de citer.

Cordialement,
--
Olivier