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 :

Lister les données


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 55
    Points
    55
    Par défaut Lister les données
    bonjour
    voila j ai 2matrices
    et je veux extraire les colonnes qu'ont le même nom(pour moi le nom de colonne c est a,b,c...)
    j ai pu extraire le nom de colonne commun mais je ne sais pas comment avoir les données de ce colonnes
    svp si qlq peux m aider voila la code
    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
    22
    23
    24
    25
    26
    <?php 
    // Déclaration de la matrice 
    $matrice1 = array(); 
    $matrice1[0] = array('','a','b','c');  
    $matrice1[1] = array('a','1','O','2');  
    $matrice1[2] = array('b','O','5','0');
    $matrice1[3] = array('c','O','5','0');
     
    $matrice2 = array(); 
    $matrice2[0] = array('','b','c');  
    $matrice2[1] = array('b','0','2');  
    $matrice2[2] = array('c','5','0');
     
     
    //* afficher le tableau//
    echo '<pre>'; 
    print_r($matrice1);  
    echo '</pre>';
     
    $result = array_intersect ($matrice1[0], $matrice2[0]);
      print_r($result);
     
     
     
     
    ?>

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 109
    Points : 68
    Points
    68
    Par défaut
    Le mieux, à mon avis, c'est de récréer la fonction array_intersec.
    Si tu sais combien de colonnes il y a dans ton tableau, voici une solution:

    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
    22
    23
    24
    25
    26
    27
    28
    29
     
    <?php 
    // Déclaration de la matrice 
    $matrice1 = array(); 
    $matrice1[0] = array('','a','b','c');  
    $matrice1[1] = array('a','1','O','2');  
    $matrice1[2] = array('b','O','5','0');
    $matrice1[3] = array('c','O','5','0');
     
    $matrice2 = array(); 
    $matrice2[0] = array('','b','c');  
    $matrice2[1] = array('b','0','2');  
    $matrice2[2] = array('c','5','0');
     
     
     for($i1=0; $i1<sizeof($matrice1);$i1++)
     {
     	for($i2=0; $i2<sizeof($matrice2);$i2++)
    	 {
    		 if($matrice1[0][$i1]==$matrice2[0][$i2])
    		 {
    		 echo $matrice1[0][$i1].' '.$matrice1[1][$i1].' '.$matrice1[2][$i1].' '.$matrice1[3][$i1].'</br>';
    		 echo $matrice2[0][$i2].' '.$matrice2[1][$i2].' '.$matrice2[2][$i2].'</br></br>';
    		 }
    	 }
     
     }
     
    ?>

    C'est quelque chose comme ça que tu voulais?

  3. #3
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 55
    Points
    55
    Par défaut
    merci pour ta reponse
    mais parfois je peux ne pas connaitre le nb de colonne ou bien avoir un grand nb
    merci

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 109
    Points : 68
    Points
    68
    Par défaut
    Tu peux simplement faire
    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
    for($i1=0; $i1<sizeof($matrice1);$i1++)
     {
     	for($i2=0; $i2<sizeof($matrice2);$i2++)
    	 {
    		 if($matrice1[0][$i1]==$matrice2[0][$i2])
    		 {
    			 for($i12=0; $i12<sizeof($matrice2[$i2]);$i12++)
    			 {
    			 echo $matrice2[$i12][$i2];
    			 }
    			 echo '</br>';
    			 for($i11=0; $i11<sizeof($matrice1[$i1]);$i11++)
    			 {
    			 echo $matrice1[$i11][$i1];
    			 }
    			 echo '</br></br>';
    		 }
    	 }
     
     }
    pour imprimer tes matrices.

    Le seul truc c'est que c'est uniquement ta premiere colonne qui est vérifiée (ton a,b, c). Il me semble que c'est ça que tu voulais faire

  5. #5
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 55
    Points
    55
    Par défaut
    Exactement merci infiniment
    a vrai dire ce code permis de cree n import quelle matrice mais je sais pas comment adapter ce code avec ta proposition:
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    <html> 
     
    <head> 
    <title>matrices</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
    </head> 
     
    <body> 
    <strong> 
    comparaison de deux matrices<br><br> 
    </strong> 
     
     
    <?php 
     
    /************************************************************************* 
    ************************ bibliotèque des fonctions ******************** 
    **************************************************************************/ 
     
    function afficher_liste($nomvar,$n) { 
    $la_liste = "<select name=$nomvar>"; 
    for ($i=1;$i<=$n;$i++) { 
    $la_liste .= "<option value=$i>$i</option>"; 
    } 
    $la_liste .= "</select>"; 
    echo $la_liste; 
    } 
     
    function fabrique_tableau($nom_tab,$nb_ligne,$nb_colonne) { 
    $le_tableau = "<table cellpadding='1' cellspacing='1'>"; 
    for ($i=1;$i<=$nb_ligne;$i++) { 
    $le_tableau .= "<tr>"; 
    for ($j=1;$j<=$nb_colonne;$j++) { 
    $le_tableau .= "<td><input name = ".$nom_tab.$i.$j." value='0' size='5'></td>"; 
    } 
    $le_tableau .= "</tr>"; 
    } 
    $le_tableau .= "</table>"; 
    echo $le_tableau; 
    } 
     
    function somme($i,$j,$colonneA) { 
    $valeur = 0; 
    for ($k=1;$k<=$colonneA;$k++) { 
    $valeur += $_POST['A'.$i.$k]*$_POST['B'.$k.$j]; 
    } 
    return $valeur; 
    } 
     
    /************************************************************************* 
    ********** Saisie de la dimension des matrices ****************** 
    **************************************************************************/ 
     
    $dim_maxi = 100; 
    echo "<form action='index.php' method='post'>"; 
    echo "Matrice A : lignes "; 
    afficher_liste("ligneA",$dim_maxi); 
    echo "&nbsp;colonnes "; 
    afficher_liste("colonneA",$dim_maxi); 
    echo "<br>"; 
    echo "Matrice B : lignes "; 
    afficher_liste("ligneB",$dim_maxi); 
    echo "&nbsp;colonnes "; 
    afficher_liste("colonneB",$dim_maxi); 
    echo "<br>"; 
    echo "<input type='submit' value='Creer'></form>"; 
     
     
    ?>
    et ca le fichier index
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?php 
    function fabrique_tableau($nom_tab,$nb_ligne,$nb_colonne) { 
    $le_tableau = "<table cellpadding='1' cellspacing='1'>"; 
    for ($i=1;$i<=$nb_ligne;$i++) { 
    $le_tableau .= "<tr>"; 
    for ($j=1;$j<=$nb_colonne;$j++) { 
    $le_tableau .= "<td><input name = ".$nom_tab.$i.$j." value='0' size='5'></td>"; 
    } 
    $le_tableau .= "</tr>"; 
    } 
    $le_tableau .= "</table>"; 
    echo $le_tableau; 
    }
    /************************************************************************* 
    ********** formulaire de remplissage des matrices *************** 
    **************************************************************************/ 
     
    if (!empty($_POST['ligneA']) && !empty($_POST['colonneA'])) { 
    if (!empty($_POST['ligneB']) && !empty($_POST['colonneB'])) { 
    $ligneA = $_POST['ligneA']; 
    $colonneA = $_POST['colonneA']; 
    $ligneB = $_POST['ligneB']; 
    $colonneB = $_POST['colonneB']; 
    echo"<form action='calcul.php' method='post'>"; 
    echo"********************************************************<br>"; 
    echo"Matrice A : $ligneA Ligne(s) par $colonneA Colonne(s)<br>"; 
    fabrique_tableau("A",$ligneA,$colonneA)."<br>"; 
    echo"********************************************************<br>"; 
    echo"Matrice B : $ligneB Ligne(s) par $colonneB Colonne(s)<br>"; 
    fabrique_tableau("B",$ligneB,$colonneB); 
    echo"********************************************************<br>"; 
    echo"<input type='hidden' name = 'calcul' value=1>"; 
    echo"<input type='hidden' name = 'ligneA' value=".$ligneA.">"; 
    echo"<input type='hidden' name = 'colonneA' value=".$colonneA.">"; 
    echo"<input type='hidden' name = 'ligneB' value=".$ligneB.">"; 
    echo"<input type='hidden' name = 'colonneB' value=".$colonneB.">"; 
    echo"<input type='submit' value='Calculer'>"; 
    echo"</form>"; 
    } 
    } 
    ?>
    et normalement je veux faire dans le fichier calcule ce qu'ont vienne de faire
    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
    <?php
    if (!empty($_POST['calcul'])) { 
    $ligneA = $_POST['ligneA']; 
    echo $ligneA;
    $colonneA = $_POST['colonneA']; 
    $ligneB = $_POST['ligneB']; 
    $colonneB = $_POST['colonneB']; 
     
    //$valeur += $_POST['A'.$i.$k]*$_POST['B'.$k.$j]; 
     
     
    $result = array_intersect ($_POST['A'.$i.$k], $_POST['B'.$k.$j]);
      print_r($result);
     
    } 
     
    ?>
    et mille merci

Discussions similaires

  1. [Toutes versions] lister les données d'une ligne en colonnes
    Par madex dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 03/12/2013, 14h02
  2. [EJB3] lister les données d'une classe associative en EJB
    Par aminos.zahou dans le forum Java EE
    Réponses: 1
    Dernier message: 31/07/2013, 11h01
  3. lister les donnée en utilisant struts
    Par hosisib dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 26/04/2010, 09h45
  4. Réponses: 2
    Dernier message: 18/11/2008, 15h33
  5. [SQL2K] Impossible de lister les données
    Par oxomichael dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 02/08/2007, 11h51

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