Aller au contenu

Effacer une ligne dans un fichier text


Sujets conseillés

Posté

Bonjour,

Voila, je voudrais effacer une ligne precise dans un fichier text.

Voici ce que je compte faire:

Tout se passe sur le meme php.

1--J'ouvre le fichier text en lecture/ecriture.

2--Je retourne chacunes de ces lignes en utilisant un while(!feof) et un compteur pour que l'utilisateur ais le numero des lignes.

3--Par formulaire je demande quelle ligne effacer en passant une variable invisible pour indiquer que le php passe en mode effacer.

C'est là que ca se complique, je n'ais pas trouvé dans la doc de fonctions permettant d'effacer une ligne.

Voici ce que je compte faire:

1--Recuperer la totalité de mon fichier dans un tableau avec file("fichiertexte")

2--Effacer le fichier existant avec unlink("fichiertexte").

3--Le reecrire entierement a partir des données du tableau, mais sans la ligne a enlever...

Est ce la bonne methode ?

Existe t'il un moyen plus simple ?

(je prefere demander avant plutot que de programmer mal ou de travers)

Merci d'avance

Posté

Salut,

L'effacement du fichier n'est pas nécessaire (unlink). Il sera écrasé quand tu le réécriras si tu utilises par exemple le mode w dans fopen().

A part ça ta méthode me semble bonne :up:

Posté

Salut,

Est-ce que tu es obligé d'utiliser un fichier texte ?

Je te pose la question parce que les bases de données ont été créées par des gens qui en avaient assez de manipuler des fichiers texte :) (tu as remarqué comme c'est galère pour effacer une ligne)

Bon courage ;)

Posté

Ben j'ais droit qu'a une seule base, et je prefere la garder pour les données clefs de mon site...

La c'est juste pour une page precise ou des evenements sont sans cesse ajoutés et enlevés...

J'en dirais plus quand le site seras fini...

(D'ailleurs faudras que je mette une banniere du Hub, moi.

Posté

Justement ! :)

Sur ta base tu peux mettre autant de tables que tu veux.

A mon avis traiter avec des fichiers textes soulève deux questions :

- D'abord est-ce qu'il n'est pas plus économique (ressources système : CPU, RAM) de faire des traitement sur une BDD que sur un fichier texte ?

- D'autre part, comment ca se passe si tu as 100 personnes en même temps sur la même page ? Les softs de gestion de BDD savent gérer...

Bien sûr si tu es le seul à avoir accès à la page... j'ai rien dit ;)

Posté

Oui, les fichiers texte ne servent qu'a l'administrateur du site...

Quand aux demande de ressource, ben je sais pas...

La base de donnée que je constitue servira a plusieurs sites, c'est pour ca que je ne veux pas y mettre de choses specifiques a tel ou tel site...

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...