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 :

recuperer variables fonction fgetcsv


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 26
    Par défaut recuperer variables fonction fgetcsv
    bonjour a tous,

    voilà j'ai un petit script et je n'arrive pas a faire ce que je veux, non mais desfois,...

    alors j'ai déjà un csv qui contient par exemple les 2 lignes suivantes :
    1 "Musée Baccarat" "Magique, et brillant"
    2 "ruse de " "coyotte qui , est moins malin que..."
    le document csv est construit de la sorte :
    utf8, spérateur tab, séparateur de texte"

    Un script php qui est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    	$ligne = 0;
    	$handle = fopen("test.csv", "r");
    	while (($data = fgetcsv($handle, 0, chr(9),'"')) !== FALSE) {
        $ligne++;
        $num = count($data);
     
        for ($c=0; $c < $num; $c++) {
          echo 'Col ['.$ligne.', '.$c.'] = '.$data[$c].'<br />'; 
     
    	} 	
    }
     
    ?>
    cela m'affiche bien :

    Col [1, 0] = 1
    Col [1, 1] = Musée Baccarat
    Col [1, 2] = Magique, et brillant
    Col [2, 0] = 2
    Col [2, 1] = ruse de
    Col [2, 2] = coyotte blablabla...

    Ce que je souhaite c'est récupérer chaque morceau dans une variable c'est à dire par exemple :
    la $var_id va contenir le 1 et le 2
    la $var_text1 va contenir 'musée bacarat' et ruse de
    etc ...etc..
    le tout étant de me permettre ensuite de transmettre chaque contenu de ces variable dans un base mysql
    id
    text1
    text2

    voilà j'espère avoir été assez clair
    j'imagine que cela ne dois pas être complioqué, mais j'avoue que je bloque dessus et je commence à craquer.

    dans l'attente je vous remercie

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour et bienvenu sur le forum,

    et pourquoi pas simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    	$ligne = 0;
    	$handle = fopen("test.csv", "r");
    	while (($data = fgetcsv($handle, 0, chr(9),'"')) !== FALSE) {
                 $sql = "INSERT INTO table (id, texte1, texte2) VALUES (" . $data[0] . ",'" . $data[1] . "','" . $data[2] . "')";
                 ........
    	} 	
    ?>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 26
    Par défaut
    merci pour cette réponse rapide,

    le pb qui se pose c'est que je veux dégager chaque champs car je risque d'avoir encore des manip a faire dessus avant de les envoyer dans la base de données du style coupé le text1 (prendre un certain nombre de caractères) et l'inserer dans un champs type resume et l'ensemble du text1 dans fulltext.


    Est ce que je suis clair, j'ai tellement la tête comme un choux que je me demande si je suis clair.

    je cherche actuellement sur explode mais je bute encore

  4. #4
    Membre chevronné
    Profil pro
    Responsable de service informatique
    Inscrit en
    Septembre 2004
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 352
    Par défaut
    Pourquoi tu ne stockerais pas ces résultats dans un tableau multi-dimensionnel ? :o

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    le pb qui se pose c'est que je veux dégager chaque champs car je risque d'avoir encore des manip a faire dessus avant de les envoyer dans la base de données du style coupé le text1
    Rien n'empeche de le faire dans la boucle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    	$ligne = 0;
    	$handle = fopen("test.csv", "r");
    	while (($data = fgetcsv($handle, 0, chr(9),'"')) !== FALSE) {
                 $data[1] = substr($data[1], 0, 1);
                 ............
                 $sql = "INSERT INTO table (id, texte1, texte2) VALUES (" . $data[0] . ",'" . $data[1] . "','" . $data[2] . "')";
                 ........
    	}
    ?>
    Je ne verrais pas l'interet de reconstruire un tableau pour le reparcourir.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 26
    Par défaut
    bonjour,

    et merci pour ces réponse je me disais bien aussi qu'il était stupide de refaire une boucle pour recréer un tableau que j'ai déjà avec la fonction fgetcsv
    je vais continuer à avancer dans mon travail et peut être aurais je encore besoin de conseil

    merci bien.

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

Discussions similaires

  1. recuperation variable fonction
    Par Devilju69 dans le forum Langage
    Réponses: 9
    Dernier message: 22/05/2009, 10h26
  2. [FLASH MX2004] Recuperation variable dans URL
    Par Bibicmoi dans le forum Flash
    Réponses: 11
    Dernier message: 20/08/2005, 14h05
  3. [FLASH MX2004] Recuperation variable de PHP
    Par gchanteux dans le forum Flash
    Réponses: 11
    Dernier message: 10/05/2005, 19h16
  4. [langage] Recupération variables d'environnement
    Par Ludo167 dans le forum Langage
    Réponses: 2
    Dernier message: 19/07/2004, 14h48

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