Aller au contenu

Impossible d'envoyer un mail dynamiquement via php !

Featured Replies

Posté(e)

Bonjour à tous.

Ca fait une bonne quinzaine de jours que je me casse la tête pour envoyer un mail avec mon appli.

J'ai suivi plein du tuto, sans résultat et je ne souhaite pas utiliser de librairie annexe, car la commande mail de PHP doit fonctionner... normalement 😉

Dernièrement, j'ai suivi ça : https://www.nas-forum.com/forum/topic/43783-fonction-mail-php-ne-fonctionne-pas/ qui est donc en place.

Voici mon code :

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta http-equiv="x-ua-compatible" content="IE=edge"></meta>
        <title>MULTIVAC 3 - Test Mail</title>
        <link rel="stylesheet" type="text/css" href="./css/overlay.css"></link>
    </head>

    <body style="margin: 0px; width: 100%; height: 100%; left: 0; top: 0;">
        <script src="./lib/jquery-3.3.1.js"></script>
        <script src="./js/fonctionsCommunes.js"></script>
		<script src="./js/overlay.js"></script>

		<div style="position: absolute; margin: auto; left: calc(50% - 250px); top: calc(50% - 50px);">
			<input type="button" value="cliquez sur moi pour envoyer un message" id="sendmail" style="width: 500px; height: 100px;"></input>
		</div>
		
		<script>
			document.getElementById("toolBar").style.display = "none";
		
			function sendmail(req, emetteurDeb, emetteurFin)
			{
				let email = "emetteur@domaine.net";
				let subject = "Test mail";
				let request = req;
				
				$.ajax(
				{
					type: "GET",
					url: "./php/sendMail.php",
					method: "POST",
					data: {email : email, subject : subject, request : request},
					async: false,
					error : function(data)
					{
						alert("erreur : " + data);
					},
					success : function(data)
					{
console.log("dans SUCCESS");
						alert("data="+data);
					}
				});
			}
			
			document.getElementById("sendmail").onclick = function()
			{
console.log("juste avant SENDMAIL");
				sendmail("test", "prenom.nom", "doamine.net");
			};
		</script>
    </body>
</html>


<?php
//ESSAI 1
     mail('prenom.nom@domaine.net', 'TEST', 'Ceci est un email de test en provenance de NAS_SYNO');


//ESSAI 2
     $to      = 'prenom.nom@domaine.net';
     $subject = 'le sujet';
     $message = 'Bonjour !';
     $headers = 'From: prenom.nom@domaine.net' . "\r\n" .
     'Reply-To: prenom.nom@domaine.net' . "\r\n" .
     'X-Mailer: PHP/' . phpversion();
	 
     mail($to, $subject, $message, $headers);	



?> 

Je ne sais plus trop quoi faire.

Est-ce que mon code est bon ?

Est-ce que le NAS est bien configuré ?

Merci d'avance pour votre aide précieuse 😉

 

Modifié par Zebulon777

Posté(e)

bonjour,
dans le syno, il y a un endroit ou on renseigne le smtp, le port et le SSL/TLS.

 

sans ça, rien ne peut partir puisque dans ton code (je ne suis pas un expert) ne se retrouvent aucun des éléments obligatoires pour un envoi de mail.
dans cette même partie, est ce que le test d'envoi d'un email fonctionne ?

bon courage

anti🍺

courier_test.PNG

Posté(e)
  • Auteur

Oui, c'était fait, j'avais oublié de le préciser et ça fonctionne impec.

La seule chose qui diffère de ta config est que nous devons spécifier un nom et une adresse pour l'expéditeur.

 

Posté(e)

bon alors mon info est pas valable. tant pis j'aurai essayé.😭

cependant, comme tu implémentes un nouveau script dans le nas, ne faut-il pas que tu reprennes les identifiants de cnx dans ton script ?
il sont peut-être inclus dans tes <script src...> ?   tu ne le précises pas.
 

hé hé hé  
pask moua, j'sui ché free paske jé rien comprite. 🤪

anti🍺

Posté(e)
  • Auteur

LOL, c'est déjà super sympa d'avoir essayer.

Donc, il faudrait que je reprenne ce que j'ai mis dans "expéditeur" sur le nas à la place de quoi e mon script ?

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.