Structurer un fichier text
Bonjour à tous!
J'ai un gros souci avec les données que j'exporte vers un fichier.txt. Elles ne sont pas structurés.
Voici le code que j'utilise pour exporter mes données vers un fichier text.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| <?php
include ('config.php'); // mon fichier de connection a ma bdd
include('verifSession.php'); //fichier de session
$fp = fopen ("D:/txtgesco/ntcep1.txt", "r+");
$contenu_du_fichier = fgets ($fp, 255);
fseek ($fp, 0);
$log=$_SESSION['login'];
$req="SELECT prenomUser FROM user WHERE login='$log'";
$res=mysql_query($req) or die ('Erreur');
while($data=mysql_fetch_row($res))
{
$nomven=$data[0];
}
$sql = "SELECT Recette,Idchaufbill,Daterecette,r.libelle,r.Ligne,CdeLigne
FROM t_recette r, t_chauffeur c
WHERE c.Idchaufgesco = r.Idchaufgesco
AND dateSaisie='2012-03-07'
AND r.IdSoc='4'";
$requete=mysql_query($sql);
$text =""; // j'ouvre une variable texte
//$codecai = 0;
$totht=0;
$mtht=0;
$mttva=0;
/* les entêtes fichier n°1*/
while ($row=mysql_fetch_array($requete))
{
$Daterecette = $row['Daterecette'];
$Recette = $row['Recette']; //$ttc
$Idchaufbill = $row['Idchaufbill'];
$codecli = $row['CdeLigne'];
$totht = $Recette * 0.95;
$mtht = $totht;
$mttva= $Recette - $totht;
$text .= "$codecli $Daterecette $totht $Recette $mtht $mttva $Idchaufbill $nomven \r\n";
};
fputs($fp, $text);
fclose ($fp);
echo 'Notre fichier contient : '.$contenu_du_fichier;
?>
<SCRIPT LANGUAGE="JavaScript">
alert('Exportation réussie!');
window.location = "homeExport.php";
</SCRIPT> |
Mais ensuite dans mon fichier les données sont mal structurés, actuellement le contenu ressemble à :
1223 1223 1223 1223
123 1223 1526 245
Parce qu'à la suite le fichier est importer par un logiciel de gestion comptable et donc j'aurais besoin que les données soit précisément alignées les unes sous les autres comme ça:
1223 1223 1223 1223
123 1223 1526 245
C'est possible?
Tout en sachant que je ne peux pas modifier le type de mes champs dans ma base en MySQL... car j'avais pensé à donner une longueur fixe mais je préfère ne pas y toucher.
Pouvez-vous m'aider s'il vous plaît?
Merci par avance.