Logo du forum
 

Forum TTH-News

| Inscription | | Recherche | | FAQ | | Accueil | | Liste des membres |
| Calendrier |
 
Vous n'êtes pas identifié! [Connexion] ou [Inscription] Forum » Programmation » [Java] » Charger contenu fichier .txt dans une page html / Javascript?
Login Mot de passe

3 visiteurs sur ce topic (0 membre(s), 3 invité(s) )


Auteur
Sujet : Charger contenu fichier .txt dans une page html / Javascript?
Ubik
Sage
Membre # 3930

 Avatar du membre
Lieu : Voie Lactée (Amas de la Vierge)

Messages :
1771 (0.32 par jour)


Score :

Message du 20-02-2007 @ 16:02   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   


Bonjour à tous,

Voilà, cela fait plusieurs jours que je cherche sans trouver un tout petit script de rien du tout. Je désirerais afficher dans une page html un texte dont le contenu serait strictement celui d'un fichier .txt présent dans l'arborescence du site. Bref, ce serait pour pouvoir mettre à jour le texte sans avoir à mettre à jour la page html, juste en changeant le fichier .txt.

Voilà, j'espère du plus profond de mon clavier qu'une âme charitable trouvera le bouchon qui arrêtera la fuite.

Merci encore.
----------
Intel Core i7 2600K @ stock + Noctua NH-C12P SE14 - Asus P8Z68-M PRO - Corsair XMS3 PC12800 CAS 9 16 Go - NVidia GTX460 - Crucial M4 128 Go Revision 3.0 - WD Raptor WD1500ADFD - WD Caviar SE16 WD5000AAKS - Lian Li PC-V354B + Seasonic X-460 Fanless + Noctua NF-P14 FLX + Noctua NF-S12B ULN - Eizo S2110W + S1721-SH
- Haut de page -
KliVer
Vétéran
Membre # 6221

 Avatar du membre
Lieu : liege - Belgique

Messages :
6971 (1.29 par jour)


Score :

Message du 20-02-2007 @ 16:10   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

et editer ton .html avec un bloc note ca suffis pas ?

je sais que c'est pas une sollution, mais entre editer un .txt et un .html, il n'y a pas beaucoup de différence :!!!:
- Haut de page -
chani
Vétéran
Membre # 9009

 Avatar du membre
Lieu : METZ

Messages :
4161 (0.8 par jour)


Score :

Message du 20-02-2007 @ 16:43   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

tiens, vla une fonction de lecture de fichier txt...
Code :

/*
    * Fonction de lecture d'un fichier texte
    */
   function read_txt($path, $nof,$total) {
      $contenu='';
      $fichier=$path.'/'.$nof.'.txt';
      $fp = fopen ($fichier, 'r')    // ouverture du fichier
         or trigger_error('Le fichier '.$fichier.' est introuvable.', E_USER_WARNING);
      if ($fp<>false) {            // si le fichier est trouvé
         flock ($fp, LOCK_SH);      // le fichier est vérrouillé par un verrou partagé
         if ($total=true) {         // le fichier est lu dans sa totalité sans interuption
            $contenu = fread ($fp, filesize($fichier));
         }
         else {                  // le fichier est lu ligne par ligne et mis dans un tableau
            while (!feof($fp)) {
               $contenu[]=rtrim(fgets($fp, 1024),"\r\n");   // enléve les /n de fin de ligne
            }
         }   
         flock ($fp, LOCK_UN);      // déverrouillage du fichier
         fclose ($fp);
         $this->resultat=$contenu;
         return true;
      }
      else {
         return false;
      }
   }



Tu claque le $contenu dans un champs style :

Code :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Texte du titre</title>
</head>
<body>

<h1>Spontanément</h1>

<form action="textarea.htm">
Quels éléments HTML vous viennent à l'esprit et quel effet ont-ils:

<textarea name="entree_utilisateur" cols="50" rows="10"></textarea>


</form>

<body>
<html>



Avec un bouton submit/reset, qui envois vers un script qui écris le fichier txt... je te laisse chercher la fonction d'écriture du fichier txt.. (pas trés compliqué tu repars sur la base de la fonction de lecture).

Note : il n'y aura aucune vérification de cohérence etc..


EDIT : RAAAA, p'tain, vla encore du JS :D... bon ben mon code c'est pour du php :D dsl

[message édité le 20-02-2007 @ 16:44 Par chani]
----------
chani_tth sur PSN ;)
- Haut de page -
Ubik
Sage
Membre # 3930

 Avatar du membre
Lieu : Voie Lactée (Amas de la Vierge)

Messages :
1771 (0.32 par jour)


Score :

Message du 20-02-2007 @ 18:29   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

KliVer a écrit

et editer ton .html avec un bloc note ca suffis pas ?

je sais que c'est pas une sollution, mais entre editer un .txt et un .html, il n'y a pas beaucoup de différence :!!!:



C'est une solution pour moi mais certaines personnes moins aguerries auront accès à ces textes (basiquement, un texte de news qui change toutes les semaines). C'est pour éviter d'avoir à faire moi-même l'édition du fichier .htm, c'est une question de confort!

chani a écrit

EDIT : RAAAA, p'tain, vla encore du JS :D... bon ben mon code c'est pour du php :D dsl



Eh, eh... merci du coup de main... euh... virtuel! En plus, je n'y connais rien en php (même si je m'y mettrai par curiosité) et je crois que mon hébergeur ne gère pas cette petite broutille. Enfin, je vais vérifier parce que je suis toujours autant convaincu de l'intérêt de la chose, en tous cas dans le cadre de mon travail.
----------
Intel Core i7 2600K @ stock + Noctua NH-C12P SE14 - Asus P8Z68-M PRO - Corsair XMS3 PC12800 CAS 9 16 Go - NVidia GTX460 - Crucial M4 128 Go Revision 3.0 - WD Raptor WD1500ADFD - WD Caviar SE16 WD5000AAKS - Lian Li PC-V354B + Seasonic X-460 Fanless + Noctua NF-P14 FLX + Noctua NF-S12B ULN - Eizo S2110W + S1721-SH
- Haut de page -
Baal-84
Vétéran
Membre # 25325

 Avatar du membre
Lieu : Le sudeuh !

Messages :
2069 (0.5 par jour)


Score :

Message du 20-02-2007 @ 21:09   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

qq chose du genre ?

<*html>
<*head><*/head>
<*body>
<*iframe name="textfram" border="0" src="txt.txt">
<*body>
<*html>

* à enlever ...

ou t'es compliqué du genre à vouloir que ca defile, que ca clignote, ce genre de choses ? :D

[message édité le 20-02-2007 @ 21:11 Par Baal-84]
----------
Intel 2500+ et CoolerMaster 212 plus, ASUS P8P67 rev 3, Gainward GTX 1060 MSI N560GTX-Ti Twin Frozr II, 12Go (2x2+2x4) G.Skill RipJaws DDR3 PC3-12800, Boitier Antec Sonata 3, lecteur graveur DVD Optiarc, Seagate Barracuda 7200.12 SATA500 Go, moniteur Benq FP222W H, souris G5 laser, clavier G15.
Ordi d'appoint : AMD Dual Core 3800+ avec un chouet Zalman CNPS7000B :D, MOBO ASUS A8N5X avec HR-05 sur le chipset, 7900GT Point of View, 2go ram kingston, Boitier Antec sonata2, Lecteur graveur dvd pioneer, Disque SSD 480Go hitachi 7k80 (système) et T7k250 (data).
Connexion : Free Adsl
Autres appareil électronique : Synology 211j 4To, Olympus E-510, Sony 32V4500, Samsung P2370HD, Toshiba Satellite L670D-14P, ZTE Blade S
- Haut de page -
Ubik
Sage
Membre # 3930

 Avatar du membre
Lieu : Voie Lactée (Amas de la Vierge)

Messages :
1771 (0.32 par jour)


Score :

Message du 20-02-2007 @ 23:08   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

J'ai essayé cette commande, c'est une avancée mais je me retrouve avec une bordure assez inesthétique (pour mes besoins j'entends...) et je ne peux absolument pas appliquer de style CSS (tout le site est foutu de ces trucs-là).

Merci tout de même pour le tuyau, ce n'est pas perdu, loin s'en faut.

edit:
J'en profite pour poser une autre question. Je tente désespérément de construire un menu un tout petit peu dynamique dans lequel je voudrais que le texte grossisse (ou devienne plus gras) lorsque la souris se retrouve dessus. Pour l'instant, j'ai réussi à faire changer la hauteur de la cellule au-dessus de laquelle se trouve la souris. Voici le code tel qu'il est aujourd'hui:

Code :


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>menu</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">

.Menu
{
width: 150px;
background-color: #FFFFFF;
display: block;
color: #000000;
letter-spacing: 2px;
padding-top: 2px;
padding-bottom: 2px;
margin-bottom: 1px;
text-decoration: none;
}

#Menu A
{
   width: 150px;
   background-color: #FFFFFF;
   display: block;
   color: #000000;
   padding-top: 2px;
   padding-bottom: 2px;
   margin-bottom: 1px;
   text-decoration: none;
   font-family: Arial, Helvetica, sans-serif;
}
<style>
<script language="javascript">
         /*
         SCRIPT JAVASCRIPT
         ESPACE JAVASCRIPT.COM
         <a href="http://www.espacejavascript.com" target="_blank">http://www.espacejavascript.com</a>
         */

         /* Hauteur à la normale */
         var SizeOff = 15;
         /* Hauteur au passage de la souris */
         var SizeOn = 30;
         
         var Timer;
         /* Délai avant retour à la normale */
         var Duree = 1500;
         
         var Tailles = new Array();
         var Liens = new Array();
         var TxtLiens = new Array();
         
         /* Liens et Textes */
         Liens[0] = 'http://www.mapage.com';
         TxtLiens[0] = 'quebec400';
         Liens[1] = 'http://www.mapage.net';
         TxtLiens[1] = 'roi';
         Liens[2] = 'http://www.mapage.fr';
         TxtLiens[2] = 'velux';
         Liens[3] = 'http://www.mapage.org';
         TxtLiens[3] = 'bmw';
         Liens[4] = 'http://www.mapage.info';
         TxtLiens[4] = '...';
         
         var NbLiens = Liens.length;
         
         for(i = 0; i < NbLiens; i++)
         {
            Tailles[i] = SizeOff;
         }
         
         function Size(Id)
         {
            if(document.getElementById)
            {
               var RealSize = parseInt(document.getElementById("Lien" + Id + "").style.height);
            }
            else if(document.all)
            {
               var RealSize = parseInt(document.all["Lien" + Id + ""].style.height);
            }
            
            if(RealSize != Tailles[Id])
            {
               if(Tailles[Id] > RealSize)
               {
                  if(document.getElementById)
                  {
                     document.getElementById("Lien" + (Id) + "").style.height = "" + (RealSize+1) + "px";
                  }
                  else if(document.all)
                  {
                     document.all["Lien" + (Id) + ""].style.height = "" + (RealSize+1) + "px";
                  }
                  window.setTimeout("Size("+ Id +");", 5);
               }
               else if(Tailles[Id] < RealSize)
               {
                  if(document.getElementById)
                  {
                     document.getElementById("Lien" + (Id) + "").style.height = "" + (RealSize-1) + "px";
                  }
                  else if(document.all)
                  {
                     document.all["Lien" + (Id) + ""].style.height = "" + (RealSize-1) + "px";
                  }
                  window.setTimeout("Size("+ Id +");", 5);
               }
            }
         }
         
         function setSize(Id, Taille)
         {
            clearTimeout(Timer);
            for(i = 0; i < NbLiens; i++)
            {
               if(Id == i)            
               {
                  Tailles[i] = Taille;
               }
               else
               {
                  Tailles[i] = SizeOff;
               }
               Size(i);
            }
            Timer = setTimeout("setSize(-1, "+ SizeOff + ");", Duree);
         }
         
         function StartSize(Id)
         {
            Id = Id.substr(Id.length-1);
            setSize(Id, SizeOn);
         }
         
         function printMenu()
         {
            document.write('<div id="Menu">');
            for(i = 0; i < NbLiens; i++)
            {
               document.write('<font size="1"><a href="' + Liens[i] + '" id="Lien' + i + '" style="height: ' + SizeOff + 'px;" onmouseover="java script:StartSize(this.id);"> ' + TxtLiens[i] + '</a><font>');
            }
            document.write('</div>');
         }
</script>
</head>

<body><script language="javascript">
   printMenu();
</script>
<body>
<html>



[message édité le 21-02-2007 @ 17:20 Par Ubik]
----------
Intel Core i7 2600K @ stock + Noctua NH-C12P SE14 - Asus P8Z68-M PRO - Corsair XMS3 PC12800 CAS 9 16 Go - NVidia GTX460 - Crucial M4 128 Go Revision 3.0 - WD Raptor WD1500ADFD - WD Caviar SE16 WD5000AAKS - Lian Li PC-V354B + Seasonic X-460 Fanless + Noctua NF-P14 FLX + Noctua NF-S12B ULN - Eizo S2110W + S1721-SH
- Haut de page -
Baal-84
Vétéran
Membre # 25325

 Avatar du membre
Lieu : Le sudeuh !

Messages :
2069 (0.5 par jour)


Score :

Message du 21-02-2007 @ 20:38   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

Pour la bordure il faut ajouter des commandes pour la iframe.

Et pour appliquer les css sur le txt ... pfiou là t'en demande beaucoup :D
----------
Intel 2500+ et CoolerMaster 212 plus, ASUS P8P67 rev 3, Gainward GTX 1060 MSI N560GTX-Ti Twin Frozr II, 12Go (2x2+2x4) G.Skill RipJaws DDR3 PC3-12800, Boitier Antec Sonata 3, lecteur graveur DVD Optiarc, Seagate Barracuda 7200.12 SATA500 Go, moniteur Benq FP222W H, souris G5 laser, clavier G15.
Ordi d'appoint : AMD Dual Core 3800+ avec un chouet Zalman CNPS7000B :D, MOBO ASUS A8N5X avec HR-05 sur le chipset, 7900GT Point of View, 2go ram kingston, Boitier Antec sonata2, Lecteur graveur dvd pioneer, Disque SSD 480Go hitachi 7k80 (système) et T7k250 (data).
Connexion : Free Adsl
Autres appareil électronique : Synology 211j 4To, Olympus E-510, Sony 32V4500, Samsung P2370HD, Toshiba Satellite L670D-14P, ZTE Blade S
- Haut de page -
Ubik
Sage
Membre # 3930

 Avatar du membre
Lieu : Voie Lactée (Amas de la Vierge)

Messages :
1771 (0.32 par jour)


Score :

Message du 21-02-2007 @ 21:36   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

Je sais, je sais... Déjà, je voulais que ça fonctionne en javascript (ce qui est a priori impossible... impossible de lire ou d'écrire un fichier). J'ai bien compris que le php était de très loin la meilleure solution vu que les styles css fonctionnent à merveille. En plus, je voudrais pouvoir scroller... enfin j'en demande trop, j'éditerai directement sur la page html en y intégrant un javascript avec scroll, ce sera plus simple.

Merci encore.
----------
Intel Core i7 2600K @ stock + Noctua NH-C12P SE14 - Asus P8Z68-M PRO - Corsair XMS3 PC12800 CAS 9 16 Go - NVidia GTX460 - Crucial M4 128 Go Revision 3.0 - WD Raptor WD1500ADFD - WD Caviar SE16 WD5000AAKS - Lian Li PC-V354B + Seasonic X-460 Fanless + Noctua NF-P14 FLX + Noctua NF-S12B ULN - Eizo S2110W + S1721-SH
- Haut de page -
icy
Administrateur
Membre # 871

 Avatar du membre
Lieu : Bxl

Messages :
23190 (3.79 par jour)


Score :

Message du 23-02-2007 @ 15:04   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

Pour remettre les chose au point, javascript c'est coté client !!!

Donc lire un fichier sur un server, c'est pas fait pour :o Y'a des hack pour le faire, mais c'est porc et pas secure (et y'a des chance que ca marche pas sou FF).

Pour faire ca, tu dois utiliser qqc coté server, comme du java, du jsp, du php, du pearl...



[message édité le 23-02-2007 @ 15:05 Par icy]
----------
"May He touch you with His Noodly Appendage"
- Haut de page -
KliVer
Vétéran
Membre # 6221

 Avatar du membre
Lieu : liege - Belgique

Messages :
6971 (1.29 par jour)


Score :

Message du 07-03-2007 @ 9:30   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

juste pour info, dans le ifram faut ajouter frameborder="0" pour ne pas avoir de cadre
- Haut de page -
Ubik
Sage
Membre # 3930

 Avatar du membre
Lieu : Voie Lactée (Amas de la Vierge)

Messages :
1771 (0.32 par jour)


Score :

Message du 07-03-2007 @ 12:21   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

Merci à tous pour les tuyaux. J'ai pas mal cherché et en effet, c'est cette première / dernière solution qui semble la plus compatible avec mes désidérata. Merci encore.
----------
Intel Core i7 2600K @ stock + Noctua NH-C12P SE14 - Asus P8Z68-M PRO - Corsair XMS3 PC12800 CAS 9 16 Go - NVidia GTX460 - Crucial M4 128 Go Revision 3.0 - WD Raptor WD1500ADFD - WD Caviar SE16 WD5000AAKS - Lian Li PC-V354B + Seasonic X-460 Fanless + Noctua NF-P14 FLX + Noctua NF-S12B ULN - Eizo S2110W + S1721-SH
- Haut de page -
Baal-84
Vétéran
Membre # 25325

 Avatar du membre
Lieu : Le sudeuh !

Messages :
2069 (0.5 par jour)


Score :

Message du 20-09-2007 @ 1:06   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

Pour une fois que c'est moi qui donne une réponse, chuis trop fier ! ;)

J'en profite pour poser une question parce que j'ai un problème de javascript et de lien externe. J'ai pas encore de site de destination pour le fichier visé, donc pas de lien du style "http ...". Le fichier que je veux ajouter est dans un repertoire qui aura des droits plus accessibles (chuis pas fou au point de laisser n'importe qui toucher le site ;))
J'ai cherché comment entrer l'arborescence, genre src="pub/pub.htm" mais il semblerait que ça ne marche pas ...
J'ai essayé google mais lien arborescence


C'est pour utiliser ce script :
http://www.dynamicdrive.com/dynamicindex2/iframe-scroller.htm

Code :


<script type="text/javascript">
var iframesrc="pub/pub.htm"
document.write('<iframe id="datamain" src="'+iframesrc+'" width="108px" height="200px" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="no" scrolling="no"></iframe>')
</script>




[edit] bah ... finalement ça fonctionne ... bizarre !! ;)

[message édité le 20-09-2007 @ 1:50 Par Baal-84]
----------
Intel 2500+ et CoolerMaster 212 plus, ASUS P8P67 rev 3, Gainward GTX 1060 MSI N560GTX-Ti Twin Frozr II, 12Go (2x2+2x4) G.Skill RipJaws DDR3 PC3-12800, Boitier Antec Sonata 3, lecteur graveur DVD Optiarc, Seagate Barracuda 7200.12 SATA500 Go, moniteur Benq FP222W H, souris G5 laser, clavier G15.
Ordi d'appoint : AMD Dual Core 3800+ avec un chouet Zalman CNPS7000B :D, MOBO ASUS A8N5X avec HR-05 sur le chipset, 7900GT Point of View, 2go ram kingston, Boitier Antec sonata2, Lecteur graveur dvd pioneer, Disque SSD 480Go hitachi 7k80 (système) et T7k250 (data).
Connexion : Free Adsl
Autres appareil électronique : Synology 211j 4To, Olympus E-510, Sony 32V4500, Samsung P2370HD, Toshiba Satellite L670D-14P, ZTE Blade S
- Haut de page -


Aller dans le forum :  

Plan du forum | Contacter l'administrateur

Powered by SoulBB 3.0.1
© Soulmanto, 2003-2010

Valid XHTML 1.0 Transitional

Page générée en 0.055 secondes