Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

INSERER LES DONNEES FICHIER TXT DANS MYSQL

JOLIKOLO, le mercredi 12 mars 2008 à 23:30:00
Bonjour,

J ai un petit soucis de programmation.

Dans mon systeme de newsletter, j ai un script qui m exporte en fichier txt les emails des membres selon des criteres bien définis.

Maintenant j aurai aimé qu un autre script se charge de lire le fichier txt uploadé sur le serveur et contenant des adresses mails, puis de les insérer dans ma table mysql comportant uniquement un champ "email".

Voici donc le script que j ai devellopéé mais visiblement cela ne fonctionne pas car le script s execute mais rien n est inserer dans la base.


 <?php 
include ('dbconnect.php');

while(!fopen('emails.txt' , 'r'))
{
  $ligne = rtrim(fgets('emails.txt'));
 mysql_query('INSERT INTO tempmail VALUES ($ligne)');
}

// on ferme la connexion à mysql
mysql_close(); 
?>


J ai egalement essaye avec

 <?php 
include ('dbconnect.php');

while(!fopen('emails.txt' , 'r'))
{
  $ligne = rtrim(fgets('emails.txt'));
 mysql_query('INSERT INTO tempmail (code) VALUES ($ligne)');
}

// on ferme la connexion à mysql
mysql_close(); 
?>


Merci pour votre aide
Répondre à JOLIKOLO  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Dr Zoidberg, le jeudi 13 mars 2008 à 08:30:53
Salut,

Je pense que tu n'utilises pas correctement les fonctions fopen et fgets (voir la doc de php).
Essai plutôt (basé sur l'exemple sur la doc php de fgets)
<?php
// Connexion db 
$handle = @fopen("emails.txt", "r");
if ($handle) {
    while (!feof($handle)) {
        $ligne= rtrim(fgets($handle, 4096));
        mysql_query("INSERT INTO tempmail (code) VALUES ($ligne)");
    } 
    fclose($handle);
}else {
die('impossible d ouvrir le fichier');
}
// Fermeture DB
?>

Répondre à Dr Zoidberg

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
JOLIKOLO, le jeudi 13 mars 2008 à 22:28:24
Bonjour,

Merci pour ton aide Dr Zoidberg, mais j avais fais d une autre facon finalement...et beaucoup plus simple :-)

Par curiosité j essaierai ton code demain pour voir le resultat...

Bonne journée


<?php 
include ('dbconnect.php');

$req=mysql_query("LOAD DATA LOCAL INFILE 'emails.txt' INTO TABLE tempmail FIELDS TERMINATED BY '\n'")or die(mysql_error());

echo "<font color=yellow><b>Les donnés ont bien été insérées dans la table</b></font>";

// on ferme la connexion à mysql
mysql_close(); 

?>
Répondre à JOLIKOLO

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
chico200987, le vendredi 14 mars 2008 à 00:44:20
Hm, moi j'aurai plutôt pensé à une erreur de syntaxe PHP non ?

Au lieu de :

mysql_query('INSERT INTO tempmail (code) VALUES ($ligne)');

Plutôt :

mysql_query("INSERT INTO tempmail (code) VALUES ('".$ligne."')");

Non ? (Attention à différencier simple/double quote)

Et ne pas oublier les quotes autour d'une chaine de caractère.. (si code est en varchar)
Répondre à chico200987

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Dr Zoidberg, le vendredi 14 mars 2008 à 11:44:42
Effectivement, et j'avais essayé de corrigé cette erreur dans mon premier post, mais j'ai oublié les simples quotes où il fallait :-) :
mysql_query("INSERT INTO tempmail (code) VALUES ('$ligne')");
Répondre à Dr Zoidberg
Scilab -> Importer un fichier txt volumineux (Résolu) Bonjour, Je suis confronté à un double problème dans le traitement de données contenues dans un fichier txt. 1- Il fait environ 7Mo, 1 200 000 valeurs environ. Il se présente sous la forme: 19;24;32;41 5;62;75;84 91;10;11;12 ... + environ 300 000... www.commentcamarche.net/forum/affich-7306577-scilab-importer-un-fichier-txt-volumineux
Fichier TXT Format TXT Un fichier TXT est un fichier texte, c'est-à-dire un simple fichier contenant du texte au format ASCII. Pour ouvrir ou modifier un tel fichier, il suffit d'utiliser le bloc-notes ou un éditeur de texte traditionnel. www.commentcamarche.net/contents/fichier/txt.php3
Manipulation fichier .txt (Résolu) Bonjour, Savez-vous ou je peux trouver expliqué simplement comment faire des manipulation simple sur des fichier .txt? Le problème : j'ai un fichier de structure M/J/A [tab] hh:mm:ss [tab] C [tab] mS/cm [tab] m 03/11/2005 [tab] 15:15:08... www.commentcamarche.net/forum/affich-1530596-manipulation-fichier-txt
[MS-Dos] Ecrire dans un fichier texte en batchPour écrire dans un fichier texte, il suffit d'utiliser une redirection ">" :echo texte_à_ecrire > fichier_de_sortie.txtPour écrire à la fin d'un texte existant (concaténation) :echo "ecriture a la fin du fichier ">> fichier_de_sortie.txt www.commentcamarche.net/faq/sujet-2695-ms-dos-ecrire-dans-un-fichier-texte-en-batch
Insérer un gif animé dans PowerPointUn gif animé s'insère dans Power Point comme tout autre format graphique (bmp, jpg, ...) Pour ce faire : Ajouter une nouvelle diapositive, pouvant contenir une image. Sélectionner l'item "Insérer une image" Insèrer le fichier GIF. Notez... www.commentcamarche.net/faq/sujet-8058-inserer-un-gif-anime-dans-powerpoint
Sed - Insérer des espacementsEspacement dans un fichier Ajouter une ligne blanche après chaque phrase (ponctuée par un retour chariot) : sed G fichier.txt Ajouter une ligne blanche après chaque phrase (ponctuée par un retour chariot), sans tenir compte des lignes blanches... www.commentcamarche.net/faq/sujet-5590-sed-inserer-des-espacements
C lecture fichier txt ligne par ligne (Résolu)Bonjour, j'aimerai lire un fichier txt ligne par ligne. Le but serai de commencer la lecture lorque la ligne commencera par " www.commentcamarche.net/forum/affich-4725325-c-lecture-fichier-txt-ligne-par-ligne
Script Shell pour parser un fichier txt (Résolu)Bonjour, voila j'ai un fichier txt de ce style : toto_tu|986541|2008-09-15|10101 liste_tu|8954|2008-09-15|19021 tat_te|liste_ta|81062|2008-09-15 toto_tu|4926458|2008-09-15|3604 news_autre|133346389|2008-09-15|Les articles |tata_te|3440070|2008-09... www.commentcamarche.net/forum/affich-8591842-script-shell-pour-parser-un-fichier-txt
Découper fichier TXT en pls fichiers Excel (Résolu)Bonjour, J'ai un fichier .txt qui contient 300 000 lignes. J'ai besoin de le mettre sous excel. Comment faire pour créer automatiquement un premier fichier avec les 65 536 premières lignes, un autre avec les 65536 suivantes ... et appeler... www.commentcamarche.net/forum/affich-3218992-decouper-fichier-txt-en-pls-fichiers-excel
Importer et exporter des données sous MySQLImportation et exportation Les Système de Gestion de Bases de Données tels que MySQL permettent de manipuler facilement et avec beaucoup de souplesse un très important volume de données. Toutefois, aussi robuste soit MySQL, il peut être intéressant... www.commentcamarche.net/contents/mysql/mysqlimport.php3
LaTeX - Insertion d'imagesStyle LaTeX permet d'insérer des images de différents formats. Le plus simple est d'insérer des fichiers de type eps (Encapsuled Postscript) : Il suffit d'insérer dans le préambule la ligne suivante : \usepackage{graphicx} Puis d'insérer... www.commentcamarche.net/contents/latex/latex-images.php3
Administration de MySQLLa base de données mysql Les Système de Gestion de Bases de Données tels que MySQL permettent de manipuler facilement et avec beaucoup de souplesse un très important volume de données. Toutefois, aussi robuste soit MySQL, il peut être intéressant... www.commentcamarche.net/contents/mysql/mysqladmin.php3