Définissez un e-mail comme on le VOIT sur le serveur IMAP

Je suis en train de lire le courrier d'un Serveur Imap (Gmail). Je voudrais vérifier si il y a des nouveaux messages (invisible) et vérifier que vu.
J'ai écrit ce code mais

imap_setflag_full

semble ne pas fonctionner.
Si j'ai un nouveau mail le script est incapable de mettre le VU de drapeau de l'écho m'qu'il y a toujours un invisible mail.

  $mbox=imap_open( "{imap.gmail.com:993/ssl/novalidate-cert}" , $this->username, $this->password);
    if ($mbox) 
            {  echo "Connected\n<br><br>"; 
            }  else { exit ("Can't connect: " . imap_last_error() ."\n");  echo "FAIL!\n";  }; 

        if ($hdr = imap_check($mbox)) {
          $msgCount = $hdr->Nmsgs;
          echo "There are ".$msgCount." mail";
        } else {
          echo "Failed to get mail";

        }

        $result = imap_search($mbox, 'UNSEEN');
        echo "<br>Result: ";
        print_r($result);
        if($result==false)
            echo "No email";
        else{
            echo "you have mail"; 
            echo("<br>now I set the Seen flag for this mail");
            rsort($result);
            $status = imap_setflag_full($mbox, "1", "\\Seen \\Flagged", ST_UID);      
        }

        echo"<br><br>";


        $result = imap_search($mbox, 'UNSEEN');
        echo "<br>Result: ";
        print_r($result);
        if($result==false)
            echo "no mail";
        else{
            echo "there are still"; 

        }

Je vous remercie beaucoup.

OriginalL'auteur michele | 2011-07-20