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 :

recuperation des donnees d'un tableau


Sujet :

Langage PHP

  1. #1
    Membre actif

    Homme Profil pro
    Webmaster, Réalisateur Vidéo, Chef de projet Web documentaire
    Inscrit en
    Juillet 2006
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Webmaster, Réalisateur Vidéo, Chef de projet Web documentaire
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2006
    Messages : 404
    Points : 241
    Points
    241
    Par défaut recuperation des donnees d'un tableau
    Bonjour

    je crée un tableau et je le remplis par une requête mysql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $mysqlhistorique="SELECT* FROM Historique where id_user='$iduser'";
    $resultat = mysql_query($mysqlhistorique) or die("erreur de recherche ".mysql_error());
    $tab=array();
    while ($histor =mysql_fetch_array ($resultat)){
    $tab['id'][]=$histor['id_historique'];
    $tab['R_M'][]=$histor['R_M'];
    $tab['Date'][]=$histor['date_rech'];
    $tab['globale'][]=$histor['rech_globale'];
    $tab['type'][]=$histor['type_rech'];
     
    }
    Je veux ensuite récupérer ces données mais je n'affiche que les clefs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    foreach ($tab as $id_hist ){
       $R_M=$tab['R_M'][$id_hist];
       $date2=$tab['Date'][$id_hist];
    echo $R_M." ".$date2."<br>";
     
    }

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Il serait plus cohérent de faire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    while ($histor =mysql_fetch_array ($resultat)){
    $tab[$histor['id_historique']]= array(
    'R_M'=>$histor['R_M'],
    'Date'=>$histor['date_rech'],
    'globale'=>$histor['rech_globale'],
    'type'=>$histor['type_rech']
    );
     
    foreach ($tab as $id_hist=>$values ){
       echo $values['R_M'] . ' ' $values['Date'] . '<br/>';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2011
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 205
    Points : 409
    Points
    409
    Billets dans le blog
    1
    Par défaut
    Fais des var_dump à l'avenir pour mieux voir ce que contient ton tableau !
    Dans ton cas, $tab['id'][] est un tableau de tableau, de ce type là donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    array $tab {
        'id' => array {
            0 => Première valeur,
            1 => Deuxième valeur,
            etc...
        }
    }
    Si tu souhaites afficher tes valeurs, deux solutions :
    - inverser ton tableau
    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
    while ($histor = mysql_fetch_array ($resultat))
    {
        $tab[] = array(
            'id' => $histor['id_historique'],
            'R_M' => $histor['R_M'],
            'Date' => $histor['date_rech'],
            'globale' => $histor['rech_globale'],
            'type' => $histor['type_rech']
        );
    }
     
    // Puis boucler sur $tab :
    foreach ($tab as $datas)
    {
        $R_M   = $datas['R_M'];
        $date2 = $datas['Date'];
        echo $R_M." ".$date2."<br>";
    }
    - boucler sur un tableau et récupérer les autres
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    foreach ($tab['id'] as $key=>$id)
    {
        $R_M   = $tab['R_M'][$key];
        $date2 = $tab['Date'][$key];
        echo $R_M.' '.$date2.'<br />';
    }
    si ce post vous a été utile, si votre problème est résolu.
    Pensez-y !
    __________________________________
    Doc officielle PHP | FAQ PHP | Cours PHP

  4. #4
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    mysql_query(...) or die("erreur de recherche ".mysql_error())

    La honte est sur celui qui utilise or die
    -- Confucius
    Voici comment on aurait pu faire ç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
    <?php
     
    $id_user = 'xxx';
     
    $pdo = new PDO(...);
    $stmt = $pdo->prepare('SELECT id_historique,R_M,date_rech,rech_globale,type_rech FROM Historique where id_user=:id_user');
     
    if ($stmt->execute(compact('id_user'))) {
        $stmt->setFetchMode(PDO::FETCH_ASSOC);
        foreach ($stmt as $row) {
            echo "{$row['R_M']} {$row['date_rech']}<br />";
        }
    }
    else {
        // erreur
    }

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

Discussions similaires

  1. recuperation des donnees snmp sur un autre poste en java
    Par maire106 dans le forum Développement
    Réponses: 4
    Dernier message: 17/04/2011, 13h17
  2. Réponses: 5
    Dernier message: 28/12/2006, 16h29
  3. Réponses: 12
    Dernier message: 03/11/2005, 12h26
  4. [XML] Récupérer des données parsées
    Par bartmarley dans le forum Modules
    Réponses: 7
    Dernier message: 31/05/2005, 14h43
  5. [VB6] recuperer des valeurs ds un tableau html avec vb!!
    Par leo13 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/12/2004, 13h02

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