Merci de ta réponse.
Je vous donne le code php tel qu'il est
function sendConnectInfo($userID) {
/* appel d'une fonction qui va chercher les infos dans la BDD et attribue un mot de passe temporaire */
$user = new ConnectInfo($userID);
$to = $user -> mail;
$firstName = $user -> firstName;
$userPW = $user -> pw;
$photoFlag = !is_null($user -> photo);
$texts = ["Bonjour $firstName",
"",
"Pour accéder aux pages privées de l'Ensemble vocal :",
" - Utilisez dans le menu l'entrée \"Notre site /Espace privé\"",
" - Sur demande du système, donnez :",
" o votre nom d'utilisateur : $userID",
" o votre mot de passe : $userPW",
"",
"Rappels :",
" - Le mode d'emploi du site est disponible par l'entrée \"Notre site/Mode d'emploi\"",
" - Une fois connecté à l'Espace privé, vous pouvez modifier",
" o votre mot de passe par l'entrée \"Notre site/Nouveau mot de passe\"",
" o les autres informations vous concernant par l'entrée \"Notre site/Mes informations\"",
" - Pour accéder au lieu de répétition vous avez besoin d'une carte de membre",
" vous pouvez obtenir votre carte à l'adresse https://www.alma-musica.net/html/private/carte.php",
" - à imprimer et découper vous-même ou à laisser affichée sur votre smartphone",
" - Vous pouvez synchroniser nos activités sur votre smartphone",
" voir le mode d'emploi à l'adresse https://www.alma-musica.net/html/documents/user-guide/calendrier.html"];
if(! $photoFlag) {
$texts[] = " - Vous n'avez pas actuellement de photo dans le répertoire du site.";
$texts[] = " Prière d'en envoyer une dès que possible à l'adresse webmaster@alma-musica.net";
}
$headers = ['From: "Alma Musica"<webmaster@alma-musica.net>',
'Content-Type: text/plain; charset="UTF-8"',
'Content-Transfer-Encoding: quoted-printable',
'Bcc: webmaster@alma-musica.net'];
$subject = "Vos paramètres de connexion";
$text = implode("\n", $texts);
$header = implode("\n", $headers);
$mailsent = mail($to, $subject, $text, $header);
return $mailsent;
}
Pendant des années ce code fonctionnait sans problème.
Récemment j'ai eu systématiquement $mailsent = FALSE
En cherchant ce qui clochait, j'ai trouvé par essais et erreurs que ça venait de la longueur du texte.
Je n'ai pas la possibilité de changer quoi que ce soit dans la configuration fournie par l'hébergeur. Je pourrais peut-être demander à passer de PHP Version 7.1.12 à quelque chose de plus récent, mais chaque fois que je me suis livré à une migration de ce type, ça a été une galère de plusieurs semaines pour corriger les incompatibilités entre versions, essentiellement des paramètres optionnels devenus obligatoires, etc. Donc le site est HS pendant pas mal de temps.
Modifié par PapyJP (25 May 2022 - 10:19)