ajouter une ligne a un endrois precis

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : ajouter une ligne a un endrois precis

Re: ajouter une ligne a un endrois precis

par Ryle » 12 oct. 2015, 09:39

Bonjour,

Dans la manipulation de fichier, PHP ne te permet que de lire (read), écrire (write) ou compléter (append) un fichier. Pour insérer une nouvelle ligne au milieu de celui-ci, il te faut lire le fichier d'origine et stocker son contenu dans une variable / un tableau, puis modifier cette variable en insérant la ligne là où tu le souhaites et enfin écraser le contenu fichier avec ton nouveau contenu :)

Re: ajouter une ligne a un endrois precis

par deund » 11 oct. 2015, 01:01

encore moi
decidement ce n'ettait pas encore juste

Code : Tout sélectionner

file_put_contents($nom_fichier, $maj, FILE_APPEND);
cette ligne est juste maintenant
mais bon sa fait pas ce que je voudrait

encore merci d'avance

Re: ajouter une ligne a un endrois precis

par deund » 11 oct. 2015, 00:58

j'ai mal collé
voici lo bon code trouvé
comment faire pour ecrire a la ligne choisi
sans effacer le reste!
et chaque que je post sa ajoute a la ligne 650 et pousse la ligne qui était la en bas

ex: ligne 650: ce moi bonjour

nouvelle ligne 650: coucou
ligne 651 : ce moi bonjour

Code : Tout sélectionner

<form action='' method='post'> <h2>Liste Blanche</h2> <?php if (isset ($_POST['addblanc'])) { $aj = $_POST['addblanc']; $maj = $aj.PHP_EOL; $nom_fichier='test.txt'; file_put_contents($nom_fichier, $maj - 5, FILE_APPEND); } ?> <p> <label for="addblanc">Site &agrave; ajouter</label> <input name="addblanc" type="text" id="addblanc" size="13" maxlenght="20" /> </p> <p> <input type='submit' name='Submit' value='Ajouter' /> </p> </form> <?php

ajouter une ligne a un endrois precis

par deund » 11 oct. 2015, 00:51

Bonjour a tous ,
jaimerait faire comme ce code qui va tres bien mais au lieu de ajouter a la fin
je voudrait ajouter a la ligne que je voudrait
par exemple a la ligne N° 650

voici le code qui rajoute a la fin

Code : Tout sélectionner

<script src="code.js"></script> </body> </html> <form action='' method='post'> <h2>Liste Blanche</h2> <?php if (isset ($_POST['addblanc'])) { $aj = $_POST['addblanc']; $maj = $aj.PHP_EOL; $i = fopen('test.txt', 'a+'); fseek($i, 20); fputs($i, $maj); } ?> <p> <label for="addblanc">Site &agrave; ajouter</label> <input name="addblanc" type="text" id="addblanc" size="13" maxlenght="20" /> </p> <p> <input type='submit' name='Submit' value='Ajouter' /> </p> </form>