Lecture fichier csv

Lecture fichier csv - PHP - Programmation

Marsh Posté le 20-02-2008 à 12:23:19    

Bonjour voila dans le cadre de mon projet je dois lire un fichier .csv(séparateur point virgule)

Citation :

function read_csv( $filename, $separateur)      // transfert le fichier dans un tableau
{
 if ( $FILE=fopen($filename,"r" ) )               // ouverture du fichier
 {
  while ($ARRAY[]=fgetcsv($FILE,1024,$separateur));      // lire ligne par ligne et coupe colonne par colonne
  fclose($FILE) ;                              // ferme le fichier
  array_pop($ARRAY);                                    // efface la derniere ligne
  return $ARRAY ;                              // renvoie le tableau
 }else{ /* le fichier n'existe pas */
       echo "Fichier introuvable !<br>Importation stoppée.";
       exit();
  }
}
 
$import=$_POST['import'];
$ARRAY=read_csv($import,";" );      // lit le fichier
/*}*/
$heigh=sizeof($ARRAY);            // compte le nombre de ligne
$width=sizeof($ARRAY[0]);         // nombre de colonne par ligne
 


 

Citation :

<td>
  <input type="file" name="import" onchange="document.formulaire.submit();" >
 </td>


 
Alors premier souci IE me détecte le bon nombre de ligne, et Firefox m'en détecte une de plus.
Et deuxieme probleme, Dans mon tableau je met un grand nombre, mais il me le simplifie.
 
SOUS IE
 50 lignes sont prêtes à être importées
1,75145E+12   633502828  
1,75145E+12   633502834  
+toutes les autres lignes
 
Sous fireFox
 51 lignes sont prêtes à être importées
1751445620690  0633874867
1751445620682  0633502828
+toutes les autres lignes
 

Reply

Marsh Posté le 20-02-2008 à 12:23:19   

Reply

Marsh Posté le 20-02-2008 à 16:05:10    

lolilol. Voilà qu'un navigateur fait planter un script qui tourne sur le serveur.[:moule_bite]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 20-02-2008 à 16:23:23    

(parenthèse, c'est super pas bien le fichier qui s'upload dans le onchange :/ )

Reply

Marsh Posté le 20-02-2008 à 16:40:00    

euh bon j'ai corrige les problemes, je récuperer mal le fichier,  
je fais un $_Files.
 
(parenthèse, c'est super pas bien le fichier qui s'upload dans le onchange :/ ) vi je sais tu as raison , mais bon c pour le temps des tests, apres ils devront etre oblige d'appuyer sur un bouton.
 
Par contre une question la je charge le fichier sur le serveur en quelque sorte pour pouvoir le lire, reste t'il en memoire, et dois je le supprimer ou est il tout seul virer

Reply

Marsh Posté le 20-02-2008 à 17:29:44    

quand on veut le garder le fichier, on fait un "move_uploaded_file" avec le nom et le chemin définitif, donc si tu fais rien, je pense qu'il est viré tout seul...
 
mais bon, je suis pas du tout sur, donc si une âme avisée veut bien confirmer (ou infirmer)... :wahoo:


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 20-02-2008 à 17:37:59    

http://fr3.php.net/manual/fr/features.file-upload.php
 

Citation :

Le fichier téléchargé sera stocké temporairement dans le dossier temporaire du système, à moins qu'un autre dossier soit fourni avec la directive upload_tmp_dir du php.ini.


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 20-02-2008 à 17:55:42    

http://fr.php.net/manual/fr/function.fgetcsv.php


---------------
Software and cathedrals are much the same - first we build them, then we pray.
Reply

Marsh Posté le 20-02-2008 à 18:02:28    


t'es vilain, t'as même pas lu son code alors qu'il s'en sert.[:petrus75]


Message édité par skeye le 20-02-2008 à 18:02:32

---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 20-02-2008 à 18:23:04    

oula [:blessure]
désolé, les reflexes, chaque fois que je vois un poste comme ça ...
sorry :jap:


Message édité par anapajari le 20-02-2008 à 18:23:16

---------------
Software and cathedrals are much the same - first we build them, then we pray.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed