[PHP] écriture dans un fichier fwrite

Bonjour,

j'ai tout simplement un fichier excel au format csv point-virgule, j'arrive bien a écrire dans un fichier, seulement avant d'écrire, je lis le fichier pour savoir jusqu'a qu'elle ligne il est écrit et donc pour écrire ma ligne sur celle d'apres.... voici mon code:

$tab = array("$pilote;","$dateu;","$incident;","$prise_incident;","$environement;","$job_er;","$abend;","$job_erreur;","$job_repri;","$relance;","$hors_perim;","$respect_20mn;","$asset;","$log_erreur;","$diag_pilote;","$topx;","$escalade;","$escalade_justif;","$banque;","$partition;","$commentaire;");
if ($f = fopen("listePilote/pilotage.csv", "w"))
{
for($i=$new_line;$i<$new_line+1;$i++)
{
foreach ($tab as $line)
{
fwrite($f, $line);
}
fclose($f);
}
}
else
{
echo 'erreur lors de l\'ouverture du fichier !';
}

Seulement a chaque fois que je fait le test,il écrit sur la premiere ligne directement, et donc il mécrase les données existantes.. j'a ivérifier et mes variables dans la boucle for sont correcte..
Je crois qu'il créé le fichier et le modifie pas..

En esperant que quelqu'un puisse m'aidé :)
Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. Salut,

    Regarde mieux la doc de fopen : https://www.php.net/manual/en/function.fopen.php
    le mode 'w' efface le fichier, c'est normal.
    Si tu veux juste écrire à la fin utilise le mode 'a' qui place automatiquement le pointeur en fin de fichier, pas besoin de faire un parcours avant.
    0
    1. Et bien, merci beaucoup, sa fonctionne, j'en tirerai une bonne leçon ! LIRE LES DOCs xD

      Merci encore :)
      0
    2. Heuu lol ptite question...

      sa écris bien donc, mais quand je fait la manip la seonde fois, les infos sont ajouter sur la meme ligne a la suite, et sa a chaque manip...
      comment faire ?

      (je sais pas si je me fait bien comprendre...)
      0
  2. Tu as bien mis un retour chariot (\n\r) à la fin de ta ligne que tu insères ?
    0
    1. oui sa fonctionne .. pas de souci..
      seulement pour l'utilisation de la fonction, je vois pas..
      mais j'ai pas d'erreur pour l'instant
      0

Discussions similaires

question pix mot caché

7 réponses