Lire mail Webmail perso

Résolu
greycats Messages postés 8 Date d'inscription lundi 11 mai 2009 Statut Membre Dernière intervention 12 septembre 2011 - 5 sept. 2011 à 11:00
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre 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

3 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
6 sept. 2011 à 15:34
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 !
3
greycats Messages postés 8 Date d'inscription lundi 11 mai 2009 Statut Membre Dernière intervention 12 septembre 2011
7 sept. 2011 à 09:33
Super ça marche!!! Merci beaucoup
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
7 sept. 2011 à 10:03
bonjour
cocher reponse acceptée s.t.p.
Bonne programmation !
0
Rejoignez-nous