Lire mail Webmail perso [Résolu]

Messages postés
8
Date d'inscription
lundi 11 mai 2009
Dernière intervention
12 septembre 2011
- - Dernière réponse : cod57
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
- 7 sept. 2011 à 10:03
Bonjour,

Je suis en train de créer un webmail en php j'ai réussi a afficher une boite de réception. J'ai fait un tableau qui permet de les classés. Je voudrais ensuite voir 1 mail séparément dans une autre page en cliquant sur 'Voir' par exemple malheureusement il ne m'affiche rien dans la 2nd page .

Voici une parti de mon code source de la boite de réception (seulement la partie pour afficher le tableau avec les mails et le lien vers l'autre page):

$headers = imap_headers($mbox); 
if ($headers == false)
  echo "Pas de mails !!
";
else
{
  while (list ($key, $val) = each ($headers))
{
  $header = imap_headerinfo($mbox, $key+1, 100, 100);
  $dateMail = date("d.m.Y", $header->udate);
  $from = $header->from;
  $objetMail = $header->fetchsubject;
  $objetMail = imap_utf8($objetMail);
  $objetMail = utf8_decode($objetMail); 
  $emailExp = $from[0]->mailbox."@".$from[0]->host;
  $corpsMail = get_part ($mbox, $key+1, "TEXT/PLAIN");
  $corpsMail = imap_utf8($corpsMail);
  $corpsMail = utf8_decode($corpsMail);
  $idtMail= $key+1;

  echo "<tr>";
  echo "<td>$idtMail</td>";
  echo "<td>$dateMail</td>";
  echo "<td>$emailExp</td>";
  echo "<td>$objetMail</td>";
  echo "<td>Voir</td>";
  echo "<td><center></center></td>";
  echo "</tr>";
}
}
echo "</table>";
echo "</form>";
imap_close($mbox);



Donc pour cette parti la tout fonctionne correctement.

Maintenant pour afficher dans une autre page (nouveau fichier php):


$server = "{nom:port}INBOX";		
$user = "user"; 
$pass = "pass";

$mbox = imap_open ($server, $user, $pass);
$header=imap_headerinfo($mbox, $no);
$from=$header->from;
  echo "Message de: " .$from[0]->mailbox. "@" .$from[0]->host. "
";

$text = imap_fetchbody($mbox, $no, 1);
  echo $text;
imap_close($mbox);


Si quelqu'un a une idée d'où provient mon problème svp.

PS: je n'affiche pas les body hml head etc mais sur ce coté la je n'ai pas de probleme
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
3
Merci
bonjour
tester sur ovh et gmail ok
il faut $_GET['no']

<?php
//"{imap.example.org:143}"
$mbox = imap_open("{imap.gmail.com:993/imap/ssl}", "xxxxxxxxxxxxxxxxx@gmail.com", "xxxxxxxxxxxxxx");

$headers = imap_headers($mbox); 
if ($headers == false)
  echo "Pas de mails !!
";
else
{
  while (list ($key, $val) = each ($headers))
{
  $header = imap_headerinfo($mbox, $key+1, 100, 100);
  $dateMail = date("d.m.Y", $header->udate);
  $from = $header->from;
  $objetMail = $header->fetchsubject;
  $objetMail = imap_utf8($objetMail);
  $objetMail = utf8_decode($objetMail); 
  $emailExp = $from[0]->mailbox."@".$from[0]->host;
  //$corpsMail = get_part ($mbox, $key+1, "TEXT/PLAIN");
  $corpsMail = imap_utf8($corpsMail);
  $corpsMail = utf8_decode($corpsMail);
  $idtMail= $key+1;

  echo "<tr>";
  echo "<td>$idtMail</td>";
  echo "<td>$dateMail</td>";
  echo "<td>$emailExp</td>";
  echo "<td>$objetMail</td>";
  echo "<td>Voir</td>";
  echo "<td><center></center></td>";
  echo "</tr>";
}
}
echo "</table>";
echo "</form>";
imap_close($mbox);
?>


affichageMail.php
<?php
$server = "{imap.gmail.com:993/imap/ssl}INBOX";		
$user = "xxxxxxxxxxxxxxxx@gmail.com"; 
$pass = "xxxxxxxxxxxxxxxx";
$no=$_GET['no'];
$mbox = imap_open ($server, $user, $pass);
$header=imap_headerinfo($mbox, $no);
$from=$header->from;
echo "Message de: " .$from[0]->mailbox. "@" .$from[0]->host. "
";
$text = imap_fetchbody($mbox, $no, 1);
echo $text;
imap_close($mbox);
?>




Bonne programmation !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 105 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cod57
Messages postés
8
Date d'inscription
lundi 11 mai 2009
Dernière intervention
12 septembre 2011
0
Merci
Super ça marche!!! Merci beaucoup
Commenter la réponse de greycats
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
0
Merci
bonjour
cocher reponse acceptée s.t.p.
Bonne programmation !
Commenter la réponse de cod57

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.