IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Vérification fichier csv avant importation [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Membre actif Avatar de arthuro45
    Profil pro
    Développeur du dimanche
    Inscrit en
    Juillet 2009
    Messages
    602
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur du dimanche

    Informations forums :
    Inscription : Juillet 2009
    Messages : 602
    Points : 265
    Points
    265
    Par défaut Vérification fichier csv avant importation
    Bonsoir,

    Mon client doit importer des fichiers csv en bdd régulièrement.

    Je dois donc vérifier (en autres vérifications) si le fichier a déjà été importé précédemment mais j'hésite sur le type de vérification :

    Soit par le nom du fichier, mais le nom peut-être changé par le client.
    Soit en comparant l'ensemble des données du fichier à ceux en base.

    La 1er solution est facile, je renomme le fichier avec un numéro aléatoire et je le déplace dans un répertoire de l'application seulement accessible par celle-ci, mais je ne suis pas à l'abri d'un renommage du fichier par un tier malintentionné.

    La 2eme solution me semble plus sûre mais plus lourde côté processus et développement : ouvrir le fichier et comparer ligne par ligne avec les données de la table.

    J'ai même pensé à insérer le timestamp en base au moment de l'importation et ensuite le comparer au timestamp serveur, mais je trouve cette solution peu fiable.

    Qu'est ce qui vous semble le plus approprié ?

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    La deuxième solution est bien plus sure. De plus qu'est-ce qui te ditr que deux fichiers de même nom ont un contenu identique ?

    Une autre façon de satisfaire ton besoin est de calculer le md5(ou sha1) de ton fichier est de le stocker en base. Ainsi tu peux savoir facilement si un contenu csv a été déjà soumis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $sha1 = sha1_file($filename);
    $sql = "SELECT null FROM integrity_table WHERE sha1 = '$sha1'";
    if (mysql_num_rows(mysql_query($sql)) > 0) {
       echo "déjà là, ça craint!";
       die();
    }
    Dans le genre...

  3. #3
    Membre actif Avatar de arthuro45
    Profil pro
    Développeur du dimanche
    Inscrit en
    Juillet 2009
    Messages
    602
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur du dimanche

    Informations forums :
    Inscription : Juillet 2009
    Messages : 602
    Points : 265
    Points
    265
    Par défaut
    Effectivement le md5 ou sha1_file (que je ne connaissais pas) me semble une bonne solution. Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] Créer un fichier CSV pour importation contacts dans Outlook
    Par lety 't be dans le forum Excel
    Réponses: 4
    Dernier message: 23/12/2019, 18h49
  2. [Python 2.X] Compter des chiffres contenu dans un fichier CSV avant import Excel
    Par Invité dans le forum Général Python
    Réponses: 2
    Dernier message: 01/11/2014, 08h21
  3. [AC-2010] Controle sur fichier txt avant importation
    Par texas2607 dans le forum VBA Access
    Réponses: 3
    Dernier message: 15/07/2012, 21h03
  4. [AC-2010] remplacer symbole + en début de phrase dans csv avant import
    Par debdev dans le forum VBA Access
    Réponses: 4
    Dernier message: 29/12/2011, 10h36
  5. [VBA-E] modifier un fichier texte avant import
    Par hka75 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 04/04/2007, 21h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo