[PHP] imap_fetchbody met reeks ='en

Pagina: 1
Acties:

  • Fles
  • Registratie: Augustus 2001
  • Laatst online: 06-04-2023
Als ik mijn pop3 mail ophaal met PHP en met de functie imap_fetchbody part 1 eruit laat halen, dan laat hij heel vaak '=' in de tekst zien. Dit is alleen het geval bij lange regels.

Wanneer ik nl2br() toevoeg, blijkt dat hij alle '=' aan het eind van de regel laat zien. Bij een harde return laat hij '=20' zien.

Weet iemand hoe ik dit kan verhelpen. Het bericht is niet geëncode, dus daar ligt het niet aan.

Dit is de code van de functie die ik gebruik.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  function decodeBody($msg_nr)
  {
    global $mbox;

    $structure = imap_fetchstructure($mbox, $msg_nr);

    if($structure)
    {
      $body = imap_fetchbody($mbox, $msg_nr, "1");

      if($structure->encoding == 3)
      {
        return nl2br(imap_base64($body));
      }
      else if($structure->encoding == 4)
      {
        return nl2br(imap_qprint($body));
      }
      else
      {
        return nl2br($body);
      }
    }
  }

  • Fles
  • Registratie: Augustus 2001
  • Laatst online: 06-04-2023
Wat ik nu doe om dit te verhelpen is dit:
PHP:
1
2
3
      $body = str_replace("\r\n", "<br/>", $body);
      $body = str_replace("=<br/>", "<br/>", $body);
      $body = str_replace("=20<br/>", "<br/>", $body);


Maar het lijkt me toch een beetje omslagtig. Heeft niemand een id hoe die = erin komt? En nog belangrijker hoe ik hem er netjes weer uit krijg.

Verwijderd

woei :+

quoted_printable_decode is wat jij zoekt :*)

Verwijderd

Graveheart schreef op 17 oktober 2002 @ 12:24:
Wat ik nu doe om dit te verhelpen is dit:
PHP:
1
2
3
      $body = str_replace("\r\n", "<br/>", $body);
      $body = str_replace("=<br/>", "<br/>", $body);
      $body = str_replace("=20<br/>", "<br/>", $body);


Maar het lijkt me toch een beetje omslagtig. Heeft niemand een id hoe die = erin komt? En nog belangrijker hoe ik hem er netjes weer uit krijg.
Het is <br /> volgens XHTML (www.w3c.org);)

  • MisterData
  • Registratie: September 2001
  • Laatst online: 26-08 21:52
Verwijderd schreef op 18 oktober 2002 @ 13:48:
[...]

Het is <br /> volgens XHTML (www.w3c.org);)
XHTML = XML, en in XML mag de / ergewoon direct achter hoor. er wordt alleen een spatie tussengezet om de oudere browsers de tag toch te laten herkennen.