[PHP] écriture dans un fichier fwrite
eXo
-
eXo -
eXo -
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
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
A voir également:
- [PHP] écriture dans un fichier fwrite
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
2 réponses
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.
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.
Merci encore :)
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...)