IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Remplir contenu formulaire avec fichier txt


Sujet :

JavaScript

  1. #1
    Invit�
    Invit�(e)
    Par d�faut Remplir contenu formulaire avec fichier txt
    Bonjour j'aimerais savoir ou orienter mes recherches. J'ai une page qui me permet de compl�ter des infos et les enregistrer sous forme de fichier txt

    Y a t-il une fa�on en JScript de r�cup�rer le contenu de ce fichier txt et de l'afficher � m�me le "form name" de sorte que le input type="text" name="title" ait la valeur r�cup�r� du fichier txt celle du input type="text" name="name" la m�me chose tout autant que textarea name="newstext"

    Finalement l'id�e est de pouvoir une fois un fichier txt de fait, pouvoir l'�diter par la suite donc apr�s r�cup�ration il faudrait pouvoir le resauvegarder sons la m�me forme

    Code php : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <?php
    if (!isset($_POST['submit'])) {
    header('Content-Type: text/html;charset=UTF-8');
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
       <title>No</title>
       <link href="../style/admstyle.css" rel="stylesheet" type="text/css" />
    </head>
     
    <body>
      <div id="main">
        <div id="caption">News</div>
    	  <form name="admnews" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
            News:<br/>
            <input type="text" name="title" size="40"/><br/><br/>
            Contenu:<br/>
            <textarea name="newstext" rows="15" cols="67"></textarea><br/>
    		Auteur:<br/>
    		<input type="text" name="name" size="40"/><br/><br/>
            <center><input type="submit" name="submit" value="Publier" /></center>
         </form> 
    <?php
    $lines = file('note.txt');
    // display file line by line
    foreach($lines as $line_num => $line) {
        echo "".htmlspecialchars($line)."<br />\n";
    }
    ?>
      </div>
    </body>   
    </html>
    <?php } else {
       $newsTitel   = isset($_POST['title']) ? $_POST['title'] : 'Untitled';
       $submitDate  = date('Y-m-d');
       $submitName  = isset($_POST['name']) ? $_POST['name'] : 'No User';
       $newsContent = isset($_POST['newstext']) ? $_POST['newstext'] : 'No content';
     
       $filename = date('YmdHis');
       $f = fopen('../news/'.$filename.".txt","w+");         
       fwrite($f,$newsTitel."\n");
       fwrite($f,$submitDate."\n");
       fwrite($f,$submitName."\n");
       fwrite($f,$newsContent."\n");
       fclose($f);
     
       header('Location:../index.php');   
    }
    ?>


    Merci pour les infos
    Derni�re modification par Bovino ; 11/04/2013 � 17h34. Motif: Merci d'indiquer le langage utilis� ([code=xxx]) !

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    Pour un import/export de fichier, je pense que �a sera largement plus simple de faire �a c�t� serveur qu'avec du Javascript.

  3. #3
    Invit�
    Invit�(e)
    Par d�faut
    Ok merci pour l'info mais je connais encore moins �a? Une piste pour orienter mes recherches


    Merci

  4. #4
    Invit�
    Invit�(e)
    Par d�faut
    J'avance...ce code me permet d'afficher le contenu de mon fichier texte

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    header('Content-Type: text/html;charset=UTF-8');
    ?>
    <html>
    <head>
    <script type="text/javascript">
     
    	function init(){
     
    		var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    		extText = extText.replace(/[\r\n]/g," ");
    		document.forms[0].nMessage.value = extText;
    	}
     
    	window.onload=init;
     
    </script>
    </head>
    <body>
    <iframe name='messageTxt' src='20130408095551.txt' style='display:none'></iframe>
    <form>
    <textarea name='nMessage'></textarea>
    </form>
    </body>
    </html>
    Y a t-il moyen de faire en sorte que chaque ligne s'affiche au bon endroit en r�f�rence a input type="text" name="title" et suivant et non en affichant tout le texte dans un textarea?

    merci

  5. #5
    Invit�
    Invit�(e)
    Par d�faut
    Un autre pas...

    Avec ce code

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script type="text/javascript">	
    	function init(){
    		var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    		extText = extText.replace(/[\r\n]/g," ");
    		document.forms[0].newstext.value = extText;
    		document.forms[0].title.value = extText;
    		document.forms[0].name.value = extText;
    	}
    	//window.onload=init;
    </script>
    Je peux maintenant afficher le contenu dans chaque partie toutefois tout le contenu s'affiche au 3 endroits...

    Comment pr�ciser que la ligne 1 va a tel endroit .... ou est ce possible de pr�ciser un s�parateur (disont <br />) qui se retrouverait dans le fichier texte?


    Merci

  6. #6
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Bonsoir,
    ton texte r�cup�r� doit �tre "spliter" avant d'�tre utilis�.
    m�thode split

  7. #7
    Invit�
    Invit�(e)
    Par d�faut
    Ok merci pour l'info mais je cherche toujours selon mon fichier txt qui est produit selon cette structure

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    Titre
    2013-04-08
    Nom de l'auteur
    Text complet variable
    Qui correspond avec le code PHP qui produit le fichier

    Code php : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    $filename = date('YmdHis');
       $f = fopen('../news/'.$filename.".txt","w+");         
       fwrite($f,$newsTitel."\n");
       fwrite($f,$submitDate."\n");
       fwrite($f,$submitName."\n");
       fwrite($f,$newsContent."\n");
       fclose($f);

    Je ferais un split sur quoi? Concr�tement ce ressemblerait a quoi?

    Merci encore
    Derni�re modification par Bovino ; 12/04/2013 � 08h24. Motif: Merci d'indiquer le langage utilis� ([code=xxx]) !

  8. #8
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Tu arrives � faire un replace() mais pas un split() ?
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  9. #9
    Invit�
    Invit�(e)
    Par d�faut
    Bien...je connais pas grand chose cette partie de code je l'ai emprunt�

    Je vois un peu mais si vous pouviez m'explique ces 2 lignes?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    		extText = extText.replace(/[\r\n]/g," ");

    Je pourrais ainsi mieux comprendre le tout


    Merci

    edit bon j'viens de voir que extText = extText.replace(/[\r\n]/g," "); ne m'est pas utile....le replace n'est qu'un fa�on de pr�senter le texte!!!

  10. #10
    Invit�
    Invit�(e)
    Par d�faut
    Bon finalement j'y arrive

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <script type="text/javascript">	
    	function init(){
    		var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    		//extText = extText.replace(/[\r\n]/g," ");
    		var firstLine = extText.split('\n')[0];
    		var secondLine = extText.split('\n')[2];
    		var forthLine = extText.split('\n')[3];
    		document.forms[0].newstext.value = forthLine;  
    		document.forms[0].title.value = firstLine;
    		document.forms[0].name.value = secondLine;
    	}
    	//window.onload=init;
    </script>
    Par contre y a t-il moyen de pr�ciser la ligne 3 et suivante (peut importe le nombre) donc jusqu'� la fin du texte?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var forthLine = extText.split('\n')[3-et suivante];
    Merci

  11. #11
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Tu n'as pas du d�vorer la page du lien que je t'ai indiquer
    The split method returns the new array.
    donc tu ne le fait qu'une fois et tu utilises les diff�rents �l�ments du tableau � ta guise.

    Donc
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    var tabTxt = extText.split('\n');
    for( var i=0, nb=tabTxt.length; i< nb; i++){
      console.log( tabTxt[i]);
    }

  12. #12
    Invit�
    Invit�(e)
    Par d�faut
    Citation Envoy� par NoSmoking Voir le message

    Donc
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    var tabTxt = extText.split('\n');
    for( var i=0, nb=tabTxt.length; i< nb; i++){
      console.log( tabTxt[i]);
    }
    j'ai essay� toute sorte de chose mais je n'arrive d�finitivement pas comment faire....pour compl�ter le tout

    J'arrive pas a comprendre concr�tement, un autre indice pour m'orienter


    Merci

  13. #13
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    J'ai du mal � comprendre ton besoin mais je m'autorise une remarque, pourquoi ne pas formater, cot� serveur, ton fichier en fonction de ton besoin final?

  14. #14
    Invit�
    Invit�(e)
    Par d�faut
    Une bonne remarque,

    le fait est que ce n'est le seul code que j'ai vu et que je peux manipuler un peu plus selon mes comp�tences tr�s basic...

    j'aimerais avoir une autre solution mais je ne sais ou chercher?

    Ultimement l'id�e est de pouvoir r�cup�rer des fichiers txt sur un r�pertoire web � partir d'une page html/php et faire une liste de ces fichiers pour pouvoir ensuite �tre capable d'en s�lectionner un et le faire afficher dans la page pour ainsi pouvoir le modifier et l'enregistrer de nouveau...

    Actuellement il ne me reste qu'� savoir comment

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    modifier cette partie de code ci haut pour pouvoir r�cup�rer et afficher l'un ou l'autre des fichiers (il peut en avoir 20 le nom du fichier txt est selon la date) dans le m�me endroit...ma partie php produit...

    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    <iframe name='messageTxt' id ='../resumes/20130412092633.txt' src='../resumes/20130412092633.txt' style='display:block'></iframe><input type='button' value='Import' onClick='init()' /><iframe name='messageTxt' id ='../resumes/20130412111328.txt' src='../resumes/20130412111328.txt' style='display:block'></iframe><input type='button' value='Import' onClick='init()' />

    Si y a d'autres option je suis preneur


    Merci
    Derni�re modification par Bovino ; 15/04/2013 � 07h54. Motif: Merci d'indiquer le langage utilis� ([code=xxx]) !

  15. #15
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Faire la recherche dans un r�pertoire de ton domaine et en faire une liste pour affichage se fait cot� serveur avec le langage de ton choix.

    Afficher le contenu d'un fichier peut se faire cot� client via la technique Ajax.

    La modification peut �galement se faire cot� client via une simple TEXTAREA par exemple.

    Et la sauvegarde peut se faire via la technique Ajax.

  16. #16
    Invit�
    Invit�(e)
    Par d�faut
    Ok merci pour les infos.

    Mais comment r�cup�rer des id diff�rents...au lieu de

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var extText = window.frames.messageTxt.document.body.lastChild.lastChild.data;
    Y a t-il une option?

    document.getElementById et r�cup�rer les id produit par php et qui sont diff�rent mais en conservant l'affichage dans le iframe messageTxt

    encore merci

  17. #17
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var oText = window.frames.messageTxt.document.body.getElementById('id_cherchee');
    ou encore
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    var oFrame = document.getElementById( 'id_iframe');
    var oDoc = oFrame.contentWindow.document;
    // etc...
    ne fonctionne pas?

  18. #18
    Invit�
    Invit�(e)
    Par d�faut
    Merci pour l'info l'affaire c'est que je ne sais pas les id du frames puisque ceux ci sont en fonction des fichiers se trouvant dans le r�pertoire

    Et en php celui ci donne les id...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <iframe name='messageTxt' id ='" . $e . "' src='" . $e . "' style='display:block'></iframe><input type='button' value='Import' onClick='init()' />";
    Donc je pensais � un truc du genre?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var extText = window.frames.messageTxt.document.body.getElementById('<?php echo($e); ?>');
    je dois passer la variable id de php a java

    merci pour l'aide

  19. #19
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    ...c'est que je ne sais pas les id du frames...
    tu peux �galement r�cup�rer l'IFRAME via un
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    var lstIframe = document.getElementsByTagName('IFRAME'); // récupère une nodeLsit de toutes les IFRAME
    var oIframe = lstIframe[0]; // récup. de la 1st IFRAME
    Pour lever un doute IFRAME ou FRAME, et combien?

  20. #20
    Invit�
    Invit�(e)
    Par d�faut
    Citation Envoy� par NoSmoking Voir le message
    Pour lever un doute IFRAME ou FRAME, et combien?
    c'est bien iframe que je veux parler...

    Et selon il pourrait y en avoir 20-25 � r�cup�rer...


    Merci �a d�bloque

Discussions similaires

  1. Remplir un formulaire avec un contenu r�cup�r� ailleurs
    Par Dynam�s dans le forum G�n�ral Java
    R�ponses: 2
    Dernier message: 03/07/2012, 10h35
  2. R�ponses: 4
    Dernier message: 27/01/2009, 18h14
  3. Importer des donnees avec fichier txt
    Par flOZ dans le forum Requ�tes
    R�ponses: 8
    Dernier message: 21/04/2006, 17h26
  4. R�ponses: 1
    Dernier message: 14/04/2006, 16h51
  5. [VB6] Contenu d'un fichier txt
    Par Sytchev3 dans le forum VB 6 et ant�rieur
    R�ponses: 10
    Dernier message: 28/03/2006, 16h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo