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 :

Pb avec foreach


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 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut Pb avec foreach
    Bonjour j'aimerai savoir pourquoi je recoit une erreur lorsque je veux demander a un foreach de lire 2 tableaux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach($destinataires as $cle=>$dest and $personnes as $cle=>$nom){

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Peut être parce qu'un Foreach n'est pas fait pour lire deux tableaux en même temps.

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

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut
    tu peux mexpliquer comment faire alor pour lire 2 tablo car en fait j'ai fait un systeme de mail auto et j'aimerai lire dans le tablo 1 le destinataire et ds le 2 son nom,prenom..

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Tout dépend de la structure de tes tableaux.

    Montre nous comment tu les construit et ce que tu mets dedans exactement.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut
    voici mon 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
    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
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Envoi d'un email</title>
    </head>
     
    <body>
    <?php
     
    include("connexion.php");
    include("CarteBancaire.php");
    //include("Fonctioncom.php");
    echo $text;
     
    $requete3="SELECT genre, nom, prenom
    FROM t_commandes, t_clt
    WHERE t_clt.k_clt = t_commandes.k_clt
    AND etat = 'nouvelle'
    AND STATUS = 'finalisee'";
     
    $exe2 =  mysql_query($requete3);
    $i=0;
        while($nom=mysql_fetch_array($exe2,MYSQL_NUM)) 
        {
        echo "<tr>";
        foreach($nom as $pers) 
        {
          echo "<td> $pers </td>";
     
        }
    	$personnes[$i]=$pers;
    	$i++;
            echo "<br></tr>";
        }
        echo "</tbody></table>";
     
    echo "<br>";
    foreach ($personnes as $cle=>$val){
        echo 'num : '.$cle.' dest : '.$val.'<br/>';
    }
     
    $headers = "MIME-Version: 1.0\n"; 
    $headers .= "Content-Type:text/html;charset=iso-8859-1\n"; 
    $headers .= "Content-Transfer-Encoding: 8bit\n"; 
     
    $requete="SELECT t_clt.k_clt, nom, prenom, mail, k_commande, t_commandes.paie_des_c_fr
    FROM t_commandes, t_clt
    WHERE t_clt.k_clt = t_commandes.k_clt
    AND etat = 'nouvelle'
    AND STATUS = 'finalisee'"; 
    $result= mysql_query($requete); 
    if(!$result)
    {
      echo "Lecture impossible"; 
    }
    else
    {
        $nbcol=mysql_num_fields($result); 
        $nbemail=mysql_num_rows($result); 
        echo "<h3> Tous nos e-mail enregistres</h3>";
        echo "<h4> Il y a $nbemail nouvelles commandes enregistre </h4>";
        echo "<table border=\"1\"><tbody>";
        echo "<tr><th>No client</th> <th>Nom</th> <th>Prenom</th> <th>Mail</th><th>No commande</th><th>Moyen de paiement</th></tr>";
        while($ligne=mysql_fetch_array($result,MYSQL_NUM)) 
        {
        echo "<tr>";
        foreach($ligne as $valeur) 
        {
          echo "<td> $valeur </td>";
        }
            echo "</tr>";
        }
        echo "</tbody></table>";
    }
    mysql_free_result($result);
     
    $dest = "";
    $requete2="select mail from t_commandes, t_clt where t_clt.k_clt = t_commandes.k_clt and etat='nouvelle' and status='finalisee'";
     
    $exe =  mysql_query($requete2);
    $i=0;
        while($dest=mysql_fetch_array($exe,MYSQL_NUM)) 
        {
        echo "<tr>";
        foreach($dest as $mail) 
        {
          echo "<td> $mail <br></td>";
     
        }
    	$destinataires[$i]=$mail;
    	$i++;
            echo "</tr>";
        }
        echo "</tbody></table>";
     
     
    foreach ($destinataires as $cle=>$val){
        echo 'num : '.$cle.' dest : '.$val.' <br/>';
    }
     
    foreach($destinataires as $cle=>$dest ){
        if(mail($dest,"FBI Distribution: votre commande No $num_com", $nom, $headers)){
                 echo "Envoi reussi a $dest";
    	    }
        else{
    	echo "Echec envoi a $dest";
        }
     
    }
     
    ?>
    </body>
    </html>

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Je ne suis pas sur d'avoir compris entièrement ton code, mais si ton mail, nom et prénom sont bien dans la même table de ta BD, le moyen le plus simple serait probablement de récupérer toutes ces infos en même temps dans une seul requete pour construire un seul tableau de ce format :

    destinataire : Array{
    [0]: Array{
    [mail]: ton mail;
    [prenom]: ton prenom;
    [nom]: ton nom;
    }
    [1]: Array{
    [mail]: ton mail;
    [prenom]: ton prenom;
    [nom]: ton nom;
    }
    ...
    }

    Ensuite pour la lecture tu fais une boucle foreach

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    foreach($destinataire as $num => $pers){
         echo $num." nom: ".$pers['nom']." prenom: ".$pers['prenom']." mail:". $pers['mail'];
    }

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/09/2008, 21h44
  2. [Système] Problème avec foreach - précisions
    Par phoque.r dans le forum Langage
    Réponses: 2
    Dernier message: 13/04/2007, 12h32
  3. plusieurs conditions avec foreach
    Par decksroy dans le forum Langage
    Réponses: 16
    Dernier message: 06/03/2007, 12h43
  4. [DOM] Warning avec foreach
    Par nico9135 dans le forum Bibliothèques et frameworks
    Réponses: 12
    Dernier message: 03/09/2006, 21h50
  5. [SimpleXML] XML et parcours des noeuds avec foreach
    Par kult dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 15/11/2005, 16h36

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