J'ai un problème tout bête de condition qui ne fonctionne pas et je ne comprend pas pourquoi
Si vous avez une idée, je suis preneur
J'ai fait des tests en déclarant ma variable $niv sans condition et mon code fonctionne. Du coup, cela vient de là, mais je ne vois pas où
Voici le principe du code sur le quel je bosse
- C'est un Quizz à partir d'un formulaire de Zoho Form
- Je récupère l'email de l'utilisateur et les notes de mes modules en json
- je fais une condition qui va afficher une appréciation en fonction de la note obtenu (c'est ce qui merde)
- Je récupère un template d'email
- J'envoie un email avec l'appréciation
- Je récupère l'email de l'utilisateur et les notes de mes modules en json
Code : Tout sélectionner
$raw_payload = file_get_contents('php://input');
$payload = json_decode($raw_payload, true);
if (is_array($payload)) {
$fh = fopen("log.txt", "a+");
if ($fh) {
fwrite($fh, date('Y-m-d H:i:s', time()).PHP_EOL);
$nom=$payload['nom'];
$prenom=$payload['prenom'];
$email=$payload['email'];
$leads=$payload['leads'];
$activite=$payload['activite'];
- je fais une condition qui va afficher une appréciation en fonction de la note obtenu (c'est ce qui merde)
Code : Tout sélectionner
$niv0="Niveau zéro : tu peux t'améliorer";
$niv1="Niveau 1 : encore en dessous de la moyenne";
$niv2="Niveau 2 : au dessus de la moyenne";
$niv3="Niveau 3 : Super tu es très fort !";
if ($leads < 15)
{
$niv = $niv0 ;
}
elseif ($leads >= 15 AND $leads <= 30)
{
$niv = $niv1 ;
}
elseif ($leads >= 30 AND $leads <= 40)
{
$niv = $niv2 ;
}
else ($leads > 40)
{
$niv = $niv3 ;
}
Code : Tout sélectionner
$body = file_get_contents('email-template-test.html');
$patterns = array(
'/{prenom}/',
'/{niv}/',
);
$replacements = array(
$prenom,
$niv,
);
$body = preg_replace($patterns, $replacements, $body);
Code : Tout sélectionner
$headers = "From: \"Mon site\"<[email protected]>\n";
$headers .= "Reply-To: [email protected]\n";
$headers .= "Content-Type: text/html; charset=\"utf-8\"";
// ========================= Envoie de l'email
mail($email,$sujet,$body,$headers);