Comparer des dates fichier txt et base de donné
8 messages
• Page 1 sur 1
- goldo60
- WRInaute discret

- Messages: 54
- Inscription: 31 Juil 2007
Comparer des dates fichier txt et base de donné
Bonjour ,
Grace à des recherches et à votre aide, j'arrive à accoucher un petit script qui peut recuperer les logues d'un fichier texte que voici:
//fichier texte log.txt
209 2007-01-05 09:37:52 10:49
209 2007-01-05 09:37:52 11:49
212 2006-01-04 10:36:52 21:48
et les mettre dans une base de donnee
Voici le script
Ca marche très bien comme je voulais, mais maintenant le problème, à chaque refresh du script. le log est a nouveau inserer. donc il y a des doublons.
ce que je voudrais c'est comparer la date dans la base et celui dans le fichier txt. S'il existe deja je ne le prends pas sinon je le prends.
Merci pour votre aide.
Grace à des recherches et à votre aide, j'arrive à accoucher un petit script qui peut recuperer les logues d'un fichier texte que voici:
//fichier texte log.txt
209 2007-01-05 09:37:52 10:49
209 2007-01-05 09:37:52 11:49
212 2006-01-04 10:36:52 21:48
et les mettre dans une base de donnee
Voici le script
- Code: Tout sélectionner
//fichier teste-script.php
<?php
$host_db = 'localhost';
$user_db = 'root';
$pass_db = 'assfrrrre';
$db = 'logorama';
mysql_connect ($host_db,$user_db,$pass_db) or die('Erreur : '.mysql_error() );
mysql_select_db($db) or die('Erreur :'.mysql_error());
$theData = file("c:\\wamp\\www\\log.txt");
foreach($theData as $line){
$line = rtrim($line);
print "<h3>$line</h3>";
list($codecall, $datecall,$duration) = split("\t", $line);
mysql_query("INSERT INTO logcall (codecall, datecall, duration) VALUES ( '$codecall, '$datecall', '$duration')")or die('Erreur :'.mysql_error());
}
?>
Ca marche très bien comme je voulais, mais maintenant le problème, à chaque refresh du script. le log est a nouveau inserer. donc il y a des doublons.
ce que je voudrais c'est comparer la date dans la base et celui dans le fichier txt. S'il existe deja je ne le prends pas sinon je le prends.
Merci pour votre aide.
-

julienr - WRInaute impliqué

- Messages: 913
- Inscription: 5 Aoû 2003
salut le plus simple ou plutot le plus court :
par
en prenant soin au préalable de déclarer un index ou une clef primaire sur le codecall...
ps: replace fait un insert si l'enregistrement n'existe pas et sinon un update des valeurs.
- Code: Tout sélectionner
mysql_query("INSERT INTO logcall (codecall, datecall, duration) VALUES ( '$codecall, '$datecall', '$duration')")or die('Erreur :'.mysql_error());
par
- Code: Tout sélectionner
mysql_query("REPLACE INTO logcall (codecall, datecall, duration) VALUES ( '$codecall, '$datecall', '$duration')")or die('Erreur :'.mysql_error());
en prenant soin au préalable de déclarer un index ou une clef primaire sur le codecall...
ps: replace fait un insert si l'enregistrement n'existe pas et sinon un update des valeurs.
-

bproductiv - WRInaute accro

- Messages: 4173
- Inscription: 27 Déc 2004
goldo60 a écrit:Merci beaucoup,
Ca marche tres bien. Maintenant, comment pourrais je faire pour qu'a chaque 1 minute il se refresh tout seul. Merci.
Je te le déconseille si tu es sur un mutualisé, sinon ton hébergeur va pas apprécier..
- goldo60
- WRInaute discret

- Messages: 54
- Inscription: 31 Juil 2007
Merci bproductiv
,
Ma femme m'a fait une remarque très pernitente au sujet du script.
La remarque
Supposons que 2 codes fassent un appelle à la meme et date et à la meme heure. Que va t'il se passer. Je n'ai pas pensé a ca. Et dire qu'il y a 10 chambre soit 10 codes il y a fort possiblité que 3 chambres appelleny en meme temps.
Faut il faire l'analyse de la base avant de prendre les nouveaux données? Merci pour vos réponses.
,
Ma femme m'a fait une remarque très pernitente au sujet du script.
La remarque
Supposons que 2 codes fassent un appelle à la meme et date et à la meme heure. Que va t'il se passer. Je n'ai pas pensé a ca. Et dire qu'il y a 10 chambre soit 10 codes il y a fort possiblité que 3 chambres appelleny en meme temps.
Faut il faire l'analyse de la base avant de prendre les nouveaux données? Merci pour vos réponses.
8 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- [résolu] comparer 2 dates
- Comparer date dans base de données
- Connexion a distance a ma base de donné MYSQL
- pb de stope un boucle d'insertion ds la base de donne
- Découper une table de base de donné
- Generer miniature en fonction de ma base de donné
- conversion pour une base de donné
- url rewriting sans base de donné
- taille de base de donné : 500 Mo ( suffisante pour un forum Vb 4.00 ) ???
- taille maximum d'une base de donné et comment l'optimiser
- Comparer les classes C de 2 adresses IP - 03-09-2004
- Importer tout son blog dans Google Base - 21-11-2005
- Article sur le fichier .htaccess - 11-01-2003
- Google veut référencer les livres - 31-10-2003
- Historique des "Google Update" - 24-07-2002
- Brevet de Google sur le contenu dupliqué - 03-01-2007
- Déclarer son fichier sitemap dans le fichier robots.txt - 16-04-2007
- Deux nouveaux blogs officiels : Google Talk et Google Base - 01-12-2005
Consultez la description détaillée des produits ou services de Google suivants : Google Alternate Views
- Analyse du référencement Google
Cet outil vous donne un petit résumé de l'état de référencement de votre site dans Google. - Google Suggest
Cet outil vous permet d'obtenir une liste de 10 mots ou expressions suggérés par Google sur la base d'un mot que vous fournissez.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
