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

Langage PHP Discussion :

Comparer fichier dat et table mysql


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 57
    Points : 20
    Points
    20
    Par défaut Comparer fichier dat et table mysql
    Vu que j'ai vraiment été trop vague dans mes explications je vais faire plus précis.

    J'ai des fichiers .dat dont chaque lignes se composent de 4 chaines de caractères, séparées par des tabulations.

    Ce que je souhaite c'est un petit script en php qui me permette de comparer chaque lignes du fichier avec les enregistrements de la table, si l'enregistrement existe deja on continue la comparaison, dans le cas contraire on enregistre...

    J'ai un début de programme qui ressemble à ça (du moins pour la comparaison), mais ça coince ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
     
    <?php
     
    $host = "localhost";
    $user = "user";
    $bdd = "bdd";
    $passwd  = "mdp";
     
     
    mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
    mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
     
    $fp = fopen('monfichier.dat');
    while (!feof($fp))
     
    {
    	$ligne = fgets($fp);
    	$file[i] = explode("\t", $ligne);
    }
     
    $sql = 'SELECT mac, ip, epoch, texte FROM enregistrement';
    $req = mysql_query($sql);
     
    while ($data = mysql_fetch_array($req))
    {
            if ($data['mac'] != $file[$i][0] || $data['ip'] != $file[$i][1] || $data['epoch'] != $file[$i][2] || $data['texte'] != $file[$i][3] )
                    echo 'Pas identique';
            else{
            echo 'identique';
            }
    }
     
    ?>

  2. #2
    Membre émérite Avatar de SirDarken
    Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2004
    Messages : 897
    Points : 2 276
    Points
    2 276
    Par défaut
    A chaud je dirai que deja ton tableau $file ne fonctionnera pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $fp = fopen('monfichier.dat');
    while (!feof($fp))
     
    {
    	$ligne = fgets($fp);
    	$file[i] = explode("\t", $ligne);
    }
    $file[i], et pour deux raisons, il n'existe que dans la boucle while, et i est une valeur fixe, donc tu n'aurau qu'une ligne.

    Ensuite la seconde boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    while ($data = mysql_fetch_array($req))
    {
            if ($data['mac'] != $file[$i][0] || $data['ip'] != $file[$i][1] || $data['epoch'] != $file[$i][2] || $data['texte'] != $file[$i][3] )
                    echo 'Pas identique';
            else{
            echo 'identique';
            }
    }
    La pareil ton $i ne varie jamais, et ton tableau n'existe pas, enfin si mais il est vide.

    Ensuite je pense qu'il vas te falloir un tableau à deux dimensions.
    Car pour chaque ligne de ton fichier tu à plusieurs champs.
    Je serai toi j'irai voir les tutos sur les tableaux à ce niveau.

Discussions similaires

  1. Importation fichier articles dans table MySQL
    Par Eleanor dans le forum Requêtes
    Réponses: 31
    Dernier message: 19/06/2012, 17h42
  2. Import d'un fichier dans une table MySql
    Par jep33 dans le forum Langage
    Réponses: 2
    Dernier message: 04/11/2008, 17h27
  3. [MySQL] Affichage Fichier JOINT (depuis table MySQL type BLOB) header content
    Par encore_php dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/04/2008, 17h57
  4. [MySQL] Fichier texte vers table MySQL
    Par ecdxml dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/10/2007, 11h19
  5. Importer un fichier CSV dans une table mySQL
    Par crazydiver_e2 dans le forum Requêtes
    Réponses: 4
    Dernier message: 16/01/2007, 11h47

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