Mail qui ne s'envoie putain de pas

Bonjour à tous,

J'écris ce message à ceux qui s'y connaissent un peu en php, parce que j'ai un putain de soucis. Je code entièrement mon site internet (de l'intranet jusqu'aux formulaires de contacts).
Tout fonctionne, sauf au moment où arrive le moment de payer : les tests de paiements fonctionnent bien, mais une fois effectué j'aimerais m'envoyer un mail pour me le notifier, mais comme la box l'indique, ça ne s'envoie pas.

Voici le pastebin de la page contenant le code d'envoie de mail : https://pastebin.com/Tf1Lsk4L

J'ai testé mes codes partout, vérifié la syntaxe, mais je n'arrive pas à trouver ce qui bug.. Voyez-vous l'erreur ?

Oui j'y ai carrément foutu le code d'envoie de mail directement sur la page (c'est une mesure désespérée, ne me jugez pas), ce n'est pas la question ici.

Info : c'est le code que j'utilise dans ma page de contacts. Depuis cette page, je reçois les mails que j'envoie, je l'utilise encore dans d'autres pages, où cette putain de function fonctionne, mais pas depuis ma page de paiement.

Poster un commentaire
Grmp
Grmp
6 ans

Question conne, ton serveur a son serveur mail configurer déjà ?

Kaazhan
Kaazhan
6 ans

@Grmp: même question. tu as d'autres trucs qui envoient des mails ? ca fonctionne correctement ? il se passe quoi si tu recupere du code d'un endroit ou ca marche ?

testme
testme
6 ans

@Grmp: Oui oui il est bien configuré, je suis hébergé chez OVH, et leur serveur mail est bien configuré : mes autres pages de contacts (ou bien qui permettraient aux clients de me contacter) fonctionnent bien, c'est juste à cette page là que ça bug...

testme
testme
6 ans

@Kaazhan: Oui comme dit, partout autre part, ça fonctionne bien, sauf à une page en particulier..
Le code fonctionne correctement, aucun arrêt à un moment de l'exécution de la page, mais c'est juste mon mail() qui ne fonctionne pas..

ça me frustre, ça doit sûrement venir du serveur je pense..

Nell
Nell
6 ans

Je viens pas ici pour résoudre ton problème mais surtout pour te conseiller, j'aime bien faire du from scratch aussi, mais si y a bien un truc pour lequel j'utilise une librairie, c'est bien les mails. Et pour le coup, je te suggère swiftmailer, au moins tu pourras être sûre que ton mail sera aux normes et surtout te facilitera l'intégration de pièce jointe (si nécessaire), mais aussi faire des mails avec du contenu html, ou plain text+html ... Son utilisation est assez simple, et dans la doc tu as plusieurs exemples.

testme
testme
6 ans

@Nell: J'ai testé et ça n'est pas compatible avec OVH...
Ca m'a donné l'idée de créer une classe pour mieux gérer l'envoie de mail au lieu de hardcode les fonctions, et maintenant ça fonctionne nickel !

Merci pour la proposition

Nell
Nell
6 ans

@testme: ça fonctionne, faut juste utiliser le mailtransport "mail" et non smtp.

Offerzo
Offerzo
6 ans

J'ai pas regardé ton code mais t'es sur que le script s’exécute jusqu'à là ? Fais un insert dans un table de log pour en sur.
Sinon utilise phpmailer

testme
testme
6 ans

@Offerzo: yes tout s'exécute correctement jusqu'au bout, juste le mail ne s'envoie pas
Je pense que ça vient côté serveur et non code..... Ce qui est vraiment frustrant

Offerzo
Offerzo
6 ans

@testme: je vois pas en quoi ca serait le serveur si les mails partent bien sur d'autres pages de ton site mais bon

testme
testme
6 ans

@Offerzo: Je
Oui pour moi aussi c'est pas logique... Après investigation, je viens de remarquer un truc :
Quand j'appelle la fonction mail() depuis la page "paiement-effectué", plus aucun moyen d'envoyer un mail (que ça soit depuis mon formulaire de contacts ou autre) pendant quelques temps, une raison ? Alors que quand ça fonctionne, si j'en fais l'appel depuis une autre page prévue pour, bah ça fonctionne, et une fois que je retourne sur la page de paiement, ça bloque tout..

MyName
MyName
6 ans

Vérifie les protections d'OVH pour l'Antispam ;)

testme
testme
6 ans

@MyName: Je viens de voir que j'ai une option pour le filtrage antispam/antivirus, si je veux les modifier on me donne les options suivantes :
OVH antispam/antivirus
OVH sans protection
Redirection seulement
OVH Antispam

Je devrais choisir quoi ? Ou bien j'en sélectionne aucun ?

MyName
MyName
6 ans

@testme: ça dépend de tes besoins, lis bien les options !

LeHamegeon

T'as un message d'erreur quelconque ?

ps : t'aurais plus de réponses dans g/developpement comme le dis kouneix.

kouneix
kouneix
6 ans

Tu as essayé avec une adresse gmail pour l'émetteur du mail ? Si oui, c'est ton serveur OVH qui est mal configuré.

P.S : g/developpement

Bisous.

Edit : Tente aussi d'englober ta méthode mail() avec un try catch, ça tombe t'as une erreur et elles sont désactivés sur ton serv'.

testme
testme
6 ans

@kouneix: j'ai essayé de voir ce que me retournais la fonction, et elle me renvoie un "true"...

PS : je peux plus edit, mais si ce soir je galère encore, je ferais une autre box, ou carrément j'ôte cette fonction mail et j'essaie de trouver un truc pour pallier

kouneix
kouneix
6 ans

@testme: Et pour l'histoire du gmail ? Hésite pas en MP ensuite on poste la solution en commentaire.

testme
testme
6 ans

@kouneix: Après plusieurs heures à rechercher des trucs, j'ai finalement décidé de créer ma classe pour simplifier mes envoies de mail (qui utilise toujours la fonction mail() mais maintenant ça fonctionne nickel) !

IDoc
IDoc
6 ans

@testme: Oublie pas de filtrer tout ce qui viens de $_GET pour éviter que le formulaire de contact se transforme en outils de spam.

testme
testme
6 ans

@IDoc: Mon formulaire de contact se fait en post, et j'y ai foutu des algo de protection
Et la page en pastebin que j'ai envoyé a été hardcode par désespoir parce que je n'arrivais pas à comprendre pourquoi ça ne marchait pas haha

kouneix
kouneix
6 ans

@testme: Bravo à toi.

Rousseau
Rousseau
6 ans

mail("MONPTITMAIL","Paiement",$message,$header); ?? "MONPTITMAIL"??

edit : aussi test de voir ce que renvoi mail("MONPTITMAIL","Paiement",$message,$header); de ton code pour savoir si le problème vient du code du coup

testme
testme
6 ans

@Rousseau: ça me renvoie un true, j'avais bien testé..

Cette page est réservée aux ADULTES

Tu es sur le point d'accéder à un site web qui contient du matériel explicite (pornographie).

Tu ne dois accéder à ce site que si tu as au moins 18 ans ou si tu as l'âge légal pour visionner ce type de matériel dans ta juridiction locale, l’âge le plus élevé étant retenu. En outre, tu déclares et garantis que tu ne permettras aucun mineur à d'accéder à ce site ou à ces services.


En accédant à ce site, tu acceptes nos conditions d'utilisation.