Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1836 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  [Résolu] Lecture dans un fichier TXT

 


Sujet(s) à lire :
    - [Résolu] Export données en perl
 

 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] Lecture dans un fichier TXT

n°2231598
clubber43
Posté le 23-06-2014 à 10:29:24  profilanswer
 

Bonjour à tout le monde,  
 
J'ouvre un nouveau sujet, pour un script que je bataille à terminer.
 
Je dois lire dans un fichier .txt des valeurs et les "mettre" dans une requete.
J'ai travaillé sur le projet de création et d'alimentation d'une base de données.
 
Les données sont sous la forme de :
 
base_de_donnée;
login;
mot_de_passe;
adresse_IP;
 
Et je dois les mettre dans mes requetes pour l'identification de ma base de données :
 
 

Code :
  1. ##
  2. mysql user database name  my $db ="base_de_donnée";   
  3. ## mysql database user name
  4.   my $user = "utilisateur";
  5. ## mysql database password
  6. my $pass = "mot_de_passe";
  7.  
  8. ## user hostname : @IP
  9. my $host="adresse_ip_BdD";


J'ai utilisé un morceau de code de Gilou, mais je suis bloqué quand il faut donner la valeur aux variables $db,^$user, ...
 

Code :
  1. Sub connexion_server’()
  2. open(F,'c:/connexion_bdd.txt')|| die "impossible";
  3. # debut de la boucle ligne à ligne sur le fichier
  4. while (<F> )
  5. {
  6.   # récupération des éléments
  7.   ($id) = split/;/,$ligne;
  8.   # et on insere dans le script
  9.   $identifiant = $id;
  10. Foreach $identifiant  # bug du cerveau à partir de la boucle qui va inserer les valeurs dans les requetes :  :pfff:        {
  11. ## mysql user database name     my $db ="base"; 
  12. ## mysql database user name     my $user = "utilisateur"; 
  13. ## mysql database password     my $pass = "motdepasse"; 
  14. ## user hostname : @ IP     my $host="adresse_IP";
  15.        }
  16. }


 
Merci
@+


Message édité par clubber43 le 24-06-2014 à 08:44:42

---------------
Merci
mood
Publicité
Posté le 23-06-2014 à 10:29:24  profilanswer
 

n°2231633
Soileh
Lurkeur professionnel
Posté le 23-06-2014 à 21:44:07  profilanswer
 

:hello: !

 

A mon avis, tu as plusieurs solutions pour ta question : si chacun des valeurs ne sont pas sur la même ligne, soit tu lis les n lignes en stockant tes valeurs dans un tableaux que tu utilises ensuite, soit tu lis ton fichier ligne par ligne.

 

Pour la 2e solution, je te propose ceci :

Code :
  1. open(F,'c:/connexion_bdd.txt')|| die "impossible";
  2. my $identifiant = ( split/;/,<F> )[0];
  3. my $db = ( split/;/,<F> )[0];
  4. my $user = ( split/;/,<F> )[0];
  5. my $pass = ( split/;/,<F> )[0];
  6. my $host= ( split/;/,<F> )[0];
 

Edit : Ou alors une solution du genre :

Code :
  1. open(F,'c:/connexion_bdd.txt')|| die "impossible";
  2. my @test;
  3. foreach my $i (1..5)
  4. {
  5.   push( @test, ( split/;/,<F> )[0] );
  6. }
  7. my $identifiant = $test[0];
  8. my $db = $test[1];
  9. my $user = $test[2];
  10. my $pass = $test[3];
  11. my $host= $test[4];
 

Après, je laisse Maître gilou exposer sa solution [:cupra]
:jap:


Message édité par Soileh le 23-06-2014 à 21:50:13

---------------
And in the end, the love you take is equal to the love you make
n°2231641
clubber43
Posté le 24-06-2014 à 08:23:20  profilanswer
 

Merci soileh pour le coup de pouce,  
Je vais travailler dessus aujourd'hui ^^
 
Gilou m'a beaucoup aidé ces derniers mois pour un projet, je ne veux pas le déranger encore une fois  :)  
Mais je vais prendre note de tes lignes de codes et le tourner pour mon script !!
 
Merci
@+


---------------
Merci
n°2231642
clubber43
Posté le 24-06-2014 à 08:44:25  profilanswer
 

Et bien la solution de lecture ligne à ligne est parfaite,  
Elle marche super bien ^^
 
 
Merci pour le coup de main !
 
 
Merci
@+


---------------
Merci
n°2231644
mechkurt
Posté le 24-06-2014 à 09:24:56  profilanswer
 

Y'a une fonction toute faite pour parser les fichiers de conf : parse_ini_file()


---------------
D3
n°2231645
clubber43
Posté le 24-06-2014 à 09:37:19  profilanswer
 

OK, je ne connaissait pas;  
Je prends note et sauvegarde la page ^^
 
Merci
@+


---------------
Merci
n°2231646
mechkurt
Posté le 24-06-2014 à 09:37:27  profilanswer
 

oups categorie perl, autant pour moi :- /


---------------
D3
n°2231647
clubber43
Posté le 24-06-2014 à 09:38:03  profilanswer
 

Oui, mais c'est pas grave, je suis entrain de egarder si on peut l 'adapter au PERL ^^


---------------
Merci
n°2231692
gilou
Modérateur
Modzilla
Posté le 24-06-2014 à 14:51:35  profilanswer
 

Config::IniFiles  :p

 

A+,


Message édité par gilou le 24-06-2014 à 15:38:02

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2231850
clubber43
Posté le 26-06-2014 à 09:15:00  profilanswer
 

Merci ^^
 
@+


---------------
Merci

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  [Résolu] Lecture dans un fichier TXT

 

Sujets relatifs
opération de lecture sur disque[RESOLU][PERL] Extraire chaines multiples dans une fichier
C/C et fermer un fichierstring dans un fichier netcdf
fichier xml corrompu balise absentemême fichier .htaccess en prod et developement
[PHP] probleme #Ressource #Fichier sur manip image[BATCH] Génerer un fichier texte et écrire dedans [...]
[Script Shell] utilisation de la commande tarprobleme de newbie vis a vis de la lecture d un fichier txt....
Plus de sujets relatifs à : [Résolu] Lecture dans un fichier TXT


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR