2010-10-31 8 views
0

désolé pour mon anglais, mais j'ai un problème parce que je cherche les mêmes valeurs de champ et quand je trouve la même valeur j'imprimer un message, si je ne trouve pas les mêmes valeurs j'imprimer un message d'erreur, mais ce message d'erreur est repated et je veux imprimer une fois si elles ne sont pas les mêmes valeurs ce mon code:problème avec comparer deux tableau avec foreach

foreach($row2 as $key => $value) 
    { 
     echo $value['event_title'].'<br/>'; 
     if(isset($_SESSION['account_id'])) 
     { 
      $query3 = Connexion::getConnexion()->prepare('SELECT COUNT(event_id) AS nbr,account_id,event_id ,account_event_place_reserved FROM account_event WHERE account_id =:id'); 
      $query3->bindParam(':id',$_SESSION['account_id'],PDO::PARAM_INT); 
      $query3->execute(); 
      $row3 = $query3->fetch(PDO::FETCH_ASSOC); 
      //$query3->closeCursor(); 
      //print_r($row3); 

      if($row3['nbr'] > 0) 
      { 
       $query4 = Connexion::getConnexion()->prepare('SELECT account_id,event_id ,account_event_place_reserved FROM account_event WHERE account_id =:id GROUP BY event_id'); 
       $query4->bindParam(':id',$_SESSION['account_id'],PDO::PARAM_INT); 
       $query4->execute(); 
       $row4 = $query4->fetchAll(PDO::FETCH_ASSOC); 
       $query4->closeCursor(); 

       foreach($row4 as $key => $value2) 
       { 
        //print_r($value2); 
        echo $value2['event_id'].'========='.$value['event_id']; 
        if($value2['event_id'] == $value['event_id']) 
        { 
         echo " vous etes inscrit a cet evenement"."<br/><br/>"; 


        } 
        else 
        { 
        ?> 
         <a href='#' class='event_register'> s inscrire a l evenement</a><br/><br/> 

et le résultat:

iiiii 
12=========2 s inscrire a l evenement 

Email: 
Nom: 
Prenom: 
Numero de telephone: 
Nombre de place que vous voulez reserver: 
13=========2 s inscrire a l evenement 

Email: 
Nom: 
Prenom: 
Numero de telephone: 
Nombre de place que vous voulez reserver: 
18=========2 s inscrire a l evenement 

Email: 
Nom: 
Prenom: 
Numero de telephone: 
Nombre de place que vous voulez reserver: 
oooooo 
12=========12 vous etes inscrit a cet evenement 

13=========12 s inscrire a l evenement 

Email: 
Nom: 
Prenom: 
Numero de telephone: 
Nombre de place que vous voulez reserver: 
18=========12 s inscrire a l evenement` 
+1

Il peut être utile si vous avez fourni la sortie que vous voulez vraiment voir ... –

Répondre

0

vous écrasez la $key dans cette ligne

foreach($row4 as $key => $value2) 
+0

'$ key' n'a pas été utilisé – Sadat

0

Vous pouvez utiliser une pause; pour arrêter la boucle foreach après avoir obtenu ce que vous voulez.

En outre, effectuer des requêtes SQL dans une boucle ne va pas être rapide, pensez à utiliser quelque chose comme « SELECT * FROM account_event OÙ account_id EN (ids)