Bonjour à tous.
Je ne sais pas si je suis dans le bon sous forum pour poster ce message. Si ce n'est pas le cas, veuillez m'en excusez par avance.
J'ai une grosse interrogation :
Je veux traiter un fichier csv pour l'inclure dans une base de données.
J'ai trouvé des scripts simples pour faire ce que je voulais.
Je vous mets ce que j'ai fait :
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
| <?php
if(isset($_FILES['fichier']))
{
$fichier = $_FILES['fichier']['tmp_name'];
$handle = fopen($fichier, "r");
$row = 1;
$handle = fopen("$fichier","r");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE && $row<10)
{
$num = count($data);
echo "<p> $num champs sur la ligne $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++)
{
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}
else
{
echo "pas de fichier";
}
?> |
Si on regarde attentivement ce code trouvé sur pas mal de sites, on peut voir que $handle est définie 2 fois.
Première fois :
$handle = fopen($fichier, "r");
Deuxième fois : (deux lignes en dessous)
$handle = fopen("$fichier", "r");
Pourquoi a-t-on besoin d'effectuer cette redéfinition de $handle ?
Merci pour votre réponse.
Partager