par
Pef » 28 janv. 2013, 10:17
J'ai regardé ce que je pouvais faire avec fgetcsv.
J'ai pondu ça :
if (isset($_FILES['file'])) {
$file = $_FILES['file']['tmp_name'];
$handle = fopen($file,'r');
$row = 1;
$id = $row-27;
if (($handle = fopen("$file", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$num = count($data);
if ($row > 27)
{
?><tr align="center" valign="middle" bgcolor="#DDDDDD">
<td width="20"><? echo $id; ?></td>
<td width="380" colspan="3"><input name="codebarre<? echo $id; ?>" type="text" id="codebarre<? echo $id; ?>" size="40" value="<? echo $data[$0]; ?>"/></td>
<td width="200"><input name="email<? echo $id; ?>" type="text" id="email<? echo $id; ?>" size="30" value="<? echo $data[$1]; ?>"/></td>
<td width="100"><input name="reference<? echo $id; ?>" type="text" id="reference<? echo $id; ?>" size="30" value="<? echo $data[$2]; ?>"/></td>
</tr>
<?
}
$row++;
$id++;
}
}
fclose($handle);
Pour faire simple :
Cela doit remplir les champs "codebarre", "email", et "reference" à partir de la ligne n°28 du fichier CSV, les 27 premières lignes n'étant pas utilisées dans l'import.
Pour cela, je dois donc récupérer le fichier CSV à importer.
Dans la page précédente, j'ai :
<tr>
<td width="600" colspan="2"><form action="contenu/ajout_suivi_commande_fichier.php" method="post" enctype="multipart/form-data" name="Ajouter fichier" id="Ajouter fichier">
<font size="1" face="Verdana, Arial, Helvetica, sans-serif"> Importer le fichier :
<input type="hidden" name="MAX_FILE_SIZE" id="MAX_FILE_SIZE" value="100000" />
<input class = "texte" type="file" id="file" name="file" value="Parcourir"/>
<input type="submit" name="Importer" value="Importer"/></font></form></td>
</tr>
Je pense que je suis sur la bonne voie, je fais un test.
J'ai regardé ce que je pouvais faire avec fgetcsv.
J'ai pondu ça :
[php]
if (isset($_FILES['file'])) {
$file = $_FILES['file']['tmp_name'];
$handle = fopen($file,'r');
$row = 1;
$id = $row-27;
if (($handle = fopen("$file", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$num = count($data);
if ($row > 27)
{
?><tr align="center" valign="middle" bgcolor="#DDDDDD">
<td width="20"><? echo $id; ?></td>
<td width="380" colspan="3"><input name="codebarre<? echo $id; ?>" type="text" id="codebarre<? echo $id; ?>" size="40" value="<? echo $data[$0]; ?>"/></td>
<td width="200"><input name="email<? echo $id; ?>" type="text" id="email<? echo $id; ?>" size="30" value="<? echo $data[$1]; ?>"/></td>
<td width="100"><input name="reference<? echo $id; ?>" type="text" id="reference<? echo $id; ?>" size="30" value="<? echo $data[$2]; ?>"/></td>
</tr>
<?
}
$row++;
$id++;
}
}
fclose($handle);
[/php]
Pour faire simple :
Cela doit remplir les champs "codebarre", "email", et "reference" à partir de la ligne n°28 du fichier CSV, les 27 premières lignes n'étant pas utilisées dans l'import.
Pour cela, je dois donc récupérer le fichier CSV à importer.
Dans la page précédente, j'ai :
[html]
<tr>
<td width="600" colspan="2"><form action="contenu/ajout_suivi_commande_fichier.php" method="post" enctype="multipart/form-data" name="Ajouter fichier" id="Ajouter fichier">
<font size="1" face="Verdana, Arial, Helvetica, sans-serif"> Importer le fichier :
<input type="hidden" name="MAX_FILE_SIZE" id="MAX_FILE_SIZE" value="100000" />
<input class = "texte" type="file" id="file" name="file" value="Parcourir"/>
<input type="submit" name="Importer" value="Importer"/></font></form></td>
</tr>[/html]
Je pense que je suis sur la bonne voie, je fais un test.