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 :

[Tableaux] Interpréter la variable d'un tableau contenant un tableau dans fputs


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 147
    Par défaut [Tableaux] Interpréter la variable d'un tableau contenant un tableau dans fputs
    Bonjour,

    donc voilà je voudrai faire passer en deuxième paramètre de fputs une variable contenant un tableau d'un tabeau de variable, le problème c'est que lors de l'ouverture de mon fichier.csv, j'ai j'ai le tableau du tableau qui est interprété mais pas tout le tableau.

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $file = fopen("export.csv","w");
    		fputs($file, $varTotal);
    		while ($data = mysql_fetch_array($result))
    		{
    			fputs($file,$champsTotal);
    		}
    		fclose($file);
    et donc le problème se situe au niveau de $champsTotal qui contient par exemple:

    $data[\''.$var[$i].'\']';

    et quand j'exporte, dans mon fichier, j'ai

    $data['NOM'];$data['PRENOM']

    donc en gros, ca interprète la tableau $var[$i] mais ca n'interprète pas le tableau "externe" si je puis dire.

    merci



    [EDIT], je rajoute quelques indications à mon problème quand je fais un echo de $champsTotal, j'ai bien ce que je veux:
    $data['NOM'];$data['PRENOM'];

    et quand je met $champsTotal en deuxième paramètre de fputs, je veux qu'il interprète les valeurs de ces deux tableaux $data['NOM'];$data['PRENOM'];

    (je rappelle bien sûre que $data est le tableau retourner par un mysql_fetch_array($res) et $res est le résultat d'une requete mysql.

    et aussi, php ne m'a retourner aucune erreur dans la syntaxe de mon code.
    )

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 671
    Par défaut
    il y a quoi dans le tableau $data ? montre la structure des tableaux et ce que tu veux obtenir à la fin

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 147
    Par défaut
    voici le contenu de $data (du moins les quelques premières lignes)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Array
    (
        [0] => Dupont
        [NOM] => Dupont
        [1] => Pierre
        [PRENOM] => Pierre
    )

    [edit] même si je rajoute les apostrophes entre le ; ca n'interprète pas mes variables tableaux.

    $champsTotal = $data['ARTISTE_ID'].';'.$data['ACTIVE'].';'

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 671
    Par défaut
    le plus simple c'est que tu transforme ton tableau avant l'écrire
    en plus ton tableau ressemble beaucoup au résultat d'une requête extraite avec la fonction "mysql_fetch_array", utilise plutôt http://php.net/mysql_fetch_assoc

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 147
    Par défaut
    ok pour mysql_fetch_assoc


    sinon tu veux dire qu'il faudrait que je mette directement les valeurs séparé par un ; dans ma variable $champsTotal ?

    par exemple:

    $champstotal = Pierre;Dupont

    c'est ca ?

    Le problème c'est que certaines valeurs contiennent pas mal de ligne (une biographie) et donc quel fonction permet de ne pas interpréter tout ce qui est caractère spécial à part faire un addslashes ?

  6. #6
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 671
    Par défaut
    tu peux fare ça comme ça :
    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
    // préparation du tableau
    $tableauLignes = array();
     
    while ($data = mysql_fetch_assoc($result)) {
        $tableauLignes[] = array(
            traitementCVS($data['nom']),
            traitementCVS($data['prenom']),
        );
    }
    mysql_free_result($result);
     
    // écriture du fichier
     
    $file = fopen('export.csv', 'w');
     
    fputs($file, $varTotal);
     
    foreach ($tableauLignes as $ligne) {
        fputs($file, implode(';', $ligne));
    }
    fclose($file);
    et dans la fonction "traitementCVS" tu fais les traitements dont tu as besoin

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

Discussions similaires

  1. [XL-2010] Créer un tableau contenant un tableau?
    Par gecko404 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/05/2015, 13h43
  2. [XL-MAC 2011] créer un tableau contenant un tableau
    Par Aurore24 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 02/01/2012, 18h24
  3. Réponses: 2
    Dernier message: 15/10/2006, 10h27
  4. Réponses: 4
    Dernier message: 15/08/2006, 11h28
  5. [Tableaux] récuperer une variable tableau passé par URL
    Par molesqualeux dans le forum Langage
    Réponses: 2
    Dernier message: 23/12/2005, 01h12

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