Page 1 sur 1

Comment faire un teste sur une variable

Posté : 27 juin 2005, 17:39
par airbem
Bonjour à tous .

Voila j'ai en formulaire qui permet de repondre a une annonce . Chaque annonce a une numeros qui lui est propre.

Les personnes (admin) qui s'occupe des annonces sont deux . Le numeros des annonce commencent toujours par les initiale des deux personnes. Exemple le numeros AD1258 correspond à l'annonce de Alain Doublet.

Ce que je souhaite faire c'est des que quelqu'un postule a une annonce un mail est envoyer a la personne concerné. Ce qui revient a faire un teste sur les deux premier caractere du numeros de l'annonce et donc un mail est envoyer Alain Doublet si le numeros de l'annonce est AD+++.


L'envoi de mail je sais faire y 'a pas de souci . ce qui me bloque c'est le test des 2 premier caractére . :?

Merci de votre comprehension.

Posté : 27 juin 2005, 17:45
par ouckileou
utilise la fonction substr() pour récupérer les deux premiers caractères

=> http://fr.php.net/manual/fr/function.substr.php

édition :
tu peux aussi accéder aux deux premiers caractères avec les index de chaine :
$idAnnonce = "AD333";
$codePersonne = $idAnnonce{0}.$idAnnonce{1};

Posté : 27 juin 2005, 18:16
par airbem
Bonjour
Est ce que c'est correct ceci;
la variable $to sera t elle bien pris en consideration suivant les deux cas.


$rest=substr($ref,0,2);

if($rest=='CM'){
$to = '[email protected]'. ', ';
}

if($rest=='CF'){
$to = ' [email protected]'. ', ';
}


// Sujet
$subject = "Reponse a une annonce";

// message
$message = "Reposonse a l'annonce $ref";

mail($to, $subject, $message);

Posté : 27 juin 2005, 18:51
par ouckileou
normalement oui

mais pourquoi ne pas mettre ça dans un switch ?
- comme ça tu rajouteras facilement un test si de nouveaux modérateurs apparaissent
- tu gères un cas "par défaut" si les lettres ne correspondent pas (je sais que normalement tu n'as que deux possibilités mais bon en cas de problème d'enregistrement...)
$rest=substr($ref,0,2);

switch($rest) {
	case 'CM' : $to = '[email protected]'; break;
	default : $to = '[email protected]'; // ligne exécutée dès que $rest sera différent de 'CM'
}

// Sujet
$subject = "Reponse a une annonce";

// message
$message = "Reposonse a l'annonce $ref";

mail($to, $subject, $message);

Posté : 28 juin 2005, 10:18
par airbem
Merci bien, :wink: .
L'optimisation du code j'y pense pas mais tu as raison à ce sujet . :) .