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 :

Probleme avec l'enregistrement dans un fichier et la reecriture


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Probleme avec l'enregistrement dans un fichier et la reecriture
    Bonjour,

    INTRO


    voila j'ai un probleme. Je souhaite créer un formulaire avec le champ value predefinie, enregistrer dans un fichier. Ce formulaire je voudrai qu'il serve a modifier cette variable(value). Autrement dit je voudrai que en remplissant le champ du fomulaire et en validant, la variable stocker dans un fichier soit modifier et que en cliquant par exemple sur precendent pour revenir au formulaire, le champs value soit maintenant la nouvelle variable.

    Je m'explique plus clairement : par exemple, je me met sur la page d emon formulaire et je vois le champs input type="texte" preremplir avec ecrit dedans "nom". l'utilisateur du formualire modifier cela et le remplace par son nom. Donc en fesant precedent, et en reactualisant sa page il doit voir sur le champ du formulaire a la place de "nom" le nom qu'il a entrer.

    Je precise je ne veut pas utiliser mysql.

    Vou allez me dire c'est simple il suffit de mettre a 0 fichier ou est enregistrer le nom. Mais mon probleme c'est que je ne eput pas car dans ce fichier il doit y avoir plein de variables comme "nom".

    J'ai fait trois page.01.php(formulaire), 02.php(validation), 03.php(enregistrement des variables).


    01.PHP

    <?
    include("03.php");
    ?>
    <html>
    <head>
    <title>01</title>
    </head>
    <body>
    <form action="02.php" method="get">
    Nom<br><input type="text" value="<? print("$nom"); ?>"><br><br>
    Prenom<br><input type="text" value="<? print("$prenom"); ?>"><br><br>
    <input type="submit" value="enregistrer" name="enregistrer">
    </form>
    </body>
    </html>
    02.PHP
    <?php
    $fichier = "03.php";
    fopen($fichier,"a+");
    str_replace("michel",$_GET["$nom"],$fichier);
    ?>
    03.PHP
    <?php
    $nom="michel";
    $prenom="querty";
    ?>
    Merci d'avance pout tous ceux qui voudrons bien essayer de m'aider.

  2. #2
    Membre du Club

    Inscrit en
    Avril 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 32
    Points : 51
    Points
    51
    Par défaut
    moi je palie ce problème avec des variables de session
    c'est à dire que dans ton fichier 1, tu auras ,

    <form action='fichier2' method='post'>
    <input type='text' value='<? if (!isset($_SESSION['nom'])) {print($nom);} else{print($_SESSION['nom'];} ?>' name='nameuser' />
    </form>
    <? unset($_SESSION['nom']); ?>

    dans ton fichier 2 :

    avant les vérifications des champs genre empty, etc...
    <? $_SESSION['nom'] = stripslashes($_POST['nameuser']); ?>

    Voila le mécanisme simplifié, maintenant, à toi de voir ce qui te parait le plus simple, ce n'est peut etre pas la meilleure solution mais ca en est une !
    Oublies pas le unset, sinon, il cherchera toujours la variables de session !

    ++

  3. #3
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    Une solution est d'utiliser explode() pour transformer ton fichier source en tableau. Ainsi, chaque ligne du fichier correspondra à un élément du tableau. Ensuite, tu modifies l'enregistrement que tu veux, puis tu réenregistres le tableau dans un fichier. Cela pourrait ressembler à ceci (pas testé) :
    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
    <?php
    // Charger le fichier dans un tableau
    $fichier = 'nom_de_fichier.txt';
    $contenu = file_get_contents($fichier);
    $tab = explode("\n", $contenu);
    
    // Affichage du tableau pour l'exemple
    echo '<pre>';
    print_r($tab);
    echo '</pre>';
    
    // Réenregistrer le fichier
    $tmp = fopen($fichier, "w+");
    $cnt = count($tab);
    for ($x=0; $x<$cnt; $x++)
      fwrite($tmp, $tab[$x]."\n");
    fclose($tmp);
    ?>

  4. #4
    Invité
    Invité(e)
    Par défaut
    Pour récupérer chaque ligne d'un fichier dans un tableau, il y a aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $contenu_array = file($nomFichier);
    Chaque ligne est mise dans une case du tablau ...

  5. #5
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci beaucoup a tous de votre participation qui a été des plus rapide.

    Cependant je commence a papprendre les bases de donnés. je vais essayer de me debrouillez avec.

    Merci encore a tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] soucis avec macro insertion photos pour l'enregistrer dans le fichier
    Par fabrice5962 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 23/06/2012, 17h14
  2. [PHP 5.3] Récupérer un Array avec étiquette enregistré dans un fichier .txt
    Par Myst3ryssss dans le forum Langage
    Réponses: 6
    Dernier message: 08/03/2012, 10h17
  3. Réponses: 4
    Dernier message: 07/09/2009, 16h54
  4. Réponses: 5
    Dernier message: 23/01/2009, 10h52
  5. enregistrer dans un fichier avec une appli mdi
    Par ferrari dans le forum C++Builder
    Réponses: 4
    Dernier message: 05/05/2002, 15h17

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