Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #19080

Re: PHP mail() turns text with special characters into attachments

From Arno Welzel <usenet@arnowelzel.de>
Newsgroups comp.lang.php
Subject Re: PHP mail() turns text with special characters into attachments
Date 2022-08-31 14:53 +0200
Message-ID <jn93uiFpvo0U1@mid.individual.net> (permalink)
References <teni8h$dar$1@gioia.aioe.org>

Show all headers | View raw


Jeroen Belleman, 2022-08-31 13:56:

> I use the PHP mail() function to send emails to a special interest group.
> Some of these mails are in English, no problems, and some of them are in
> French. For the latter, the message body text gets turned into an
> attachment, and the mail body remains empty. Apparently, it's the
> presence of accented characters that triggers this.

Why an attachement? Why not just adding the appropriate MIME headers
about the encoding and sending the text as UTF-8 or ISO-8859-1 or to be
safe using quoted-printable for the transport?

Also see:

<https://www.php.net/manual/en/function.quoted-printable-encode.php>

> The problem appeared when we recently moved the site to a different host.
> Both the old and the new host are Linux machines, running PHP 5.4.16 and
> Apache 20120211.

The first release of PHP 5.4 is more than 10(!) years old that version
is *way* outdated!

You should not use that version at all. Before doing any problem
analysis you should first upgrade your environment. Besides possible
security problems also bugs may be present which got fixed in newer version.

Please update to at least PHP 7.4 or 8.0 and make sure your code works
with that version (there are some breaking changes in PHP 7/8 compared
to 5):

<https://www.php.net/supported-versions.php>

> Any ideas as to how to prevent my French text from getting hidden away
> in an attachment?

As suggested above - do not use attachements but just add the text with
an appropriate encoding. There is no need to use attachments just
because you use 8-bit characters.

You can also use PHPMailer to make this process easier (which of course
also requires a decent PHP version):

<https://github.com/PHPMailer/PHPMailer>




-- 
Arno Welzel
https://arnowelzel.de

Back to comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

PHP mail() turns text with special characters into attachments Jeroen Belleman <jeroen@nospam.please> - 2022-08-31 13:56 +0200
  Re: PHP mail() turns text with special characters into attachments Arno Welzel <usenet@arnowelzel.de> - 2022-08-31 14:53 +0200
    Re: PHP mail() turns text with special characters into attachments Jeroen Belleman <jeroen@nospam.please> - 2022-08-31 15:58 +0200
      Re: PHP mail() turns text with special characters into attachments Arno Welzel <usenet@arnowelzel.de> - 2022-09-02 09:22 +0200
  Re: PHP mail() turns text with special characters into attachments Arne Vajhøj <arne@vajhoej.dk> - 2022-08-31 19:54 -0400
    Re: PHP mail() turns text with special characters into attachments Jeroen Belleman <jeroen@nospam.please> - 2022-09-01 14:24 +0200
  Re: PHP mail() turns text with special characters into attachments "He, who travels time to time" <he1983912@aol.com> - 2022-09-22 07:11 -0700

csiph-web