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

Langage PHP Discussion :

[Fichier] ecrire a une ligne de fichier


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Points : 31
    Points
    31
    Par défaut [Fichier] ecrire a une ligne de fichier
    Bonjour! voila j'aimerai modifier un fichier sachant que le fichier est composé d'un chiffre par ligne et qu'il comporte 4 lignes:
    0
    0
    0
    1

    j'execute ensuite fichier.php?ligne=4&valeur=0
    et le fichier est alors:

    0
    0
    0
    0

    Pouvez m'aider a faire cela? je debute en php

    Merci beaucoup!

    pour l'instant mon code en est la:

    <?php
    $Fnm = "output/sortie.txt";
    $inF = fopen($Fnm,"a);
    fputs($inF,$valeur);
    fclose($inF);
    ?>

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut,

    tu pourrais faire comme ceci :

    // test si les valeurs passées dans l'url en get existent
    if($_GET['ligne'], $_GET['valeur']) {

    $Fnm = "output/sortie.txt";

    // rempli un tableau avec les lignes du fichier
    $rows = file($Fnm);

    var_dump($rows); // si tu veux voir comment fonctionne un tableau

    // Modifie la valeur de la ligne dans le tableau de lignes
    $rows[$_GET['ligne'] - 1] = $_GET['valeur'];

    // Ouvre le fichier en écriture seule et efface son contenu
    $inF = fopen($Fnm, 'w');

    // Parcours le tableau $rows et écrit chaque ligne dans le fichier
    foreach($rows as $row) {
    fputs($inF,$row);
    }

    fclose($inF);

    }

    Tu peux aussi faire ça avec fseek() (plus optimisé sur les gros fichiers peut-être ?) http://fr.php.net/manual/fr/function.fseek.php

    Bye
    Vive les roues en pierre

  3. #3
    Membre chevronné
    Avatar de Bidouille
    Inscrit en
    Mars 2003
    Messages
    1 275
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 1 275
    Points : 1 992
    Points
    1 992
    Par défaut
    Il est beaucoup plus simple de réécrire le fichier une fois transféré dans un tableau avec file().
    Rédacteur PHP / Delphi ADO / Novell / OpenOffice.org

    Inutile de m'envoyer vos questions par MP, je ne réponds que par le forum.

  4. #4
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    c'est ce que propose Djakisback ou as-tu une idée plus simple ?
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  5. #5
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    j'ai oublié isset() ^^

    // test si les valeurs passées dans l'url en get existent
    if(isset($_GET['ligne'], $_GET['valeur'])) {
    Vive les roues en pierre

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/04/2007, 09h39
  2. Extraire Une Ligne Du Fichier
    Par chakcc dans le forum C
    Réponses: 2
    Dernier message: 16/10/2006, 11h45
  3. ecrire a la ligne dans fichier texte.
    Par zulot dans le forum Langage
    Réponses: 7
    Dernier message: 12/09/2006, 12h02
  4. ligne de fichier txt dans une variable
    Par suya95 dans le forum Langage
    Réponses: 2
    Dernier message: 25/07/2006, 10h14
  5. Réponses: 4
    Dernier message: 20/06/2006, 09h18

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