Lecture et écriture fichier csv à partir d'un formulaire

Fermé
eiffel74 Messages postés 8 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 27 octobre 2013 - 16 août 2013 à 14:05
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 - 25 août 2013 à 19:15
Bonjour,

J'ai un formulaire qui lit un csv et qui affiche les données dans des input.

<?php
$fp = fopen('ventes.csv','r+') or die("can't open file");?>
<form action="store.php" method="post">
<?php
while($csv_line = fgetcsv($fp,1024)) {
    for ($i = 0, $j = count($csv_line); $i < $j; $i++) {
        print '<input name="txt_form" type="text" value="'.$csv_line[$i].'" style="width:300px"/><br>';
    }
}
print '<input name="Soumettre" type="submit" />
</form></form>';
$myArray =array (utf8_decode($_POST['txt_form']));
fputcsv($fp, $myArray, ";");
fclose($fp) or die("can't close file");
?>


J'aimerais, dans un premier temps, que chaque champs (séparés par un ;) sooit affiché dans un input séparé. Dans un deuxième temps, j'aimerais pouvoir modifier un input et sauver l'intégralité du formulaire dans le même fichier csv.

Actuellement mon code de sauvegarde n'enregistre rien.

<?php
$fn = $_POST['txt_form'];
$cvsData = $fn;
$fp = fopen("ventes.csv","a");
if($fp){
fwrite($fp,$cvsData); 
fclose($fp); 
}
?>


Pouvez-vous m'aider?

Merci
A voir également:

1 réponse

djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 94
25 août 2013 à 19:15
Quand tu lis ton fichier csv, changes le nom des input (name) dynamiquement car là ; tu n'as qu'un champs identique pour toutes tes valeurs.

Ensuite lors de l'enregistrement, fais un foreach de ton $_POST afin de construire les données à écrire dans le csv.
0