dans mon bon de commande
je réalise tout une série de condition et de test sur mes variables
avec ce code et donc en principe cette condition devrait être exécutée en dernier
Mais elle passe en premier
Code : Tout sélectionner
//je verifie si le bouton radio coche n'est pas 10
else if ($promotioncases =="10" )
{ $error = "0-20";} Code : Tout sélectionner
if ($total_qte_bas == '0') {
$error = "0-18";
//si le choix du mode de livraison est le champ cache on affiche une alerte
} else if ($livraison == '() euro(s)') {
$error = "0-15";
//on verifie le reste des donnees postale
}else if (empty($nom)) {
$error = "0-1";
} else if (empty($prenom)) {
$error = "0-2";
} else if (empty($adresse)) {
$error = "0-3";
} else if (empty($cp)) {
$error = "0-4";
} else if (empty($ville)) {
$error = "0-5";
} else if (empty($pays)) {
$error = "0-6";
} else if (empty($email)) {
$error = "0-7";
//je teste pour savoir si cela est une vraie adresse email valable pour tous les pays
} else if (!filter_var(($email), FILTER_VALIDATE_EMAIL)) {
$error = "0-10";
//on teste afin de savoir si c'est bien un code postal dans le champs adresse valable pour tous les pays
}else if ($b != filter_var($b, FILTER_VALIDATE_INT)) {
$error = "0-11";
//test de l'adresse il doit y avoir un numero valable pour tous les pays
}elseif (!preg_match('#[\d ]#', ($adresse))) {
$error = "0-13";
//message erreur du choix du pays on doit absolument entrer un des pays autorises
}else if ( $country != "Belgique" && $country != "Luxembourg" && $country != "France" && $country != "Pays-bas" ) {
$error = "0-16";
}
/**
* GESTION DE LA LIVRAISON
*/
switch($livraison ){
//on teste pour savoir si le pays est bien BE pour la belgique
//on teste pour savoir si nous sommes bien en belgique
case '(MONDIAL-RELAY-BELGIQUE)3 euro(s)':
// if(!filter_var($c, FILTER_VALIDATE_INT)){
if($cb_PAYS != "BE"){
$error = "0-8";
}
// if($cb_PAYS != "BE" || $cb_PAYS != "FR" ){
// $error = "0-14";
//}
if($pays !== "Belgique" and $cb_PAYS == "BE"){
$error = "0-17";
}
if($pays === "Belgique" and $cb_PAYS != "BE"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien FR pour la france
//on teste pour savoir si nous sommes bien en france
case '(mondial relay-FRANCE)4 euro(s)':
if($cb_PAYS != "FR"){
$error = "0-8";
}
//if($pays !== "France" || $cb_PAYS != "FR"){
// $error = "0-14";
//}
if($pays !== "France" and $cb_PAYS == "FR"){
$error = "0-17";
}
if($pays === "France" and $cb_PAYS != "FR"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien LU pour le luxembourg
//on teste pour savoir si nous sommes bien au luxembourg
case '(mondial relay-LUXEMBOURG)3 euro(s)':
if($cb_PAYS != "LU"){
$error = "0-8";
}
// if($pays !== "Luxembourg" || $cb_PAYS != "LU"){
// $error = "0-17";
//}
if($pays !== "Luxembourg" and $cb_PAYS == "LU"){
$error = "0-17";
}
if($pays === "Luxembourg" and $cb_PAYS != "LU"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien NL pour les pays-bas
//on teste pour savoir si nous sommes bien aux pays pas
case '(MONDIAL-RELAY-PAYS-BAS)5 euro(s)':
if($cb_PAYS != "NL"){
$error = "0-8";
}
// if($pays !== "Pays-bas" || $cb_PAYS != "NL"){
// $error = "0-17";
//}
if($pays !== "Pays-bas" and $cb_PAYS == "NL"){
$error = "0-17";
}
if($pays === "Pays-bas" and $cb_PAYS != "NL"){
$error = "0-19";
}
break;
//********************************
//on teste les envois postaux******
//**********************************
//si on choisit frais de livraison pays le pays choisi doit etre pays bas
case '(POSTE-ENVELLOPPE-PAYS-BAS)2 euro(s)':
if( $pays != "Pays-bas") {
$error = "0-17";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre belgique et les 3 point doivent etre remplit
case '(POSTE-COLIS-BELGIQUE_point)5.50 euro(s)':
if($pays != "Belgique") {
$error = "0-17";
}
if( !$adressepoint || !$cppoint || !$villepoint) {
$error = "0-9";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre belgique
case '(POSTE-ENVELLOPPE-belgique)1 euro(s)':
case '(POSTE-COLIS-BELGIQUE)6.50 euro(s)':
if($pays != "Belgique") {
$error = "0-17";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre luxembourg
case '(POSTE-ENVELLOPPE-LUXEMBOURG)1.50 euro(s)':
if($pays != "Luxembourg") {
$error = "0-17";
}
break;
case '(POSTE-ENVELLOPPE-FRANCE)4 euro(s)':
if($pays != "France" || $cb_PAYS != "FR") {
$error = "0-17";
}
break;
//default:
//aucune erreur detectée
//$error = "Aucune erreur detectée "; //tu pourras retirer ce $error = quand tout marchera bien
}
//********************************
//fin teste les envois postaux******
//**********************************
// AUTRE ERREUR
//message alertes si autre probleme
if ($promotioncases =="20" && ($nouveau_prix_promo_int != $prix_total_int ) )
{ $error = "0-12";}
//je verifie si le bouton radio coche n'est pas 10
else if ($promotioncases =="10" )
{ $error = "0-20";}
// Dernier code d'erreur si c'est pas bon pour la commande
else if (!$commande) {
$error = "0-21";
}
//une fois tous les tests terminés..
// tu peux faire le echo de ton erreur si il y en a une... ou faire le reste de ton code
if(!empty($error)){
echo $error;
//sinon on insert en bdd et ton envoi de mail
}else{Mais juste avant les conditions avec les cases
Mais cela ne m'intéresse pas qu'elle soit exécutée a cet endroit
je désire qu'elle le soit en dernier
Code : Tout sélectionner
//debut des messages d'alertes
//si quanditee est egal a 0
if ($total_qte_bas == '0') {
$error = "0-18";
//si le choix du mode de livraison est le champ cache on affiche une alerte
} else if ($livraison == '() euro(s)') {
$error = "0-15";
//on verifie le reste des donnees postale
}else if (empty($nom)) {
$error = "0-1";
} else if (empty($prenom)) {
$error = "0-2";
} else if (empty($adresse)) {
$error = "0-3";
} else if (empty($cp)) {
$error = "0-4";
} else if (empty($ville)) {
$error = "0-5";
} else if (empty($pays)) {
$error = "0-6";
} else if (empty($email)) {
$error = "0-7";
//je teste pour savoir si cela est une vraie adresse email valable pour tous les pays
} else if (!filter_var(($email), FILTER_VALIDATE_EMAIL)) {
$error = "0-10";
//on teste afin de savoir si c'est bien un code postal dans le champs adresse valable pour tous les pays
}else if ($b != filter_var($b, FILTER_VALIDATE_INT)) {
$error = "0-11";
//test de l'adresse il doit y avoir un numero valable pour tous les pays
}elseif (!preg_match('#[\d ]#', ($adresse))) {
$error = "0-13";
//message erreur du choix du pays on doit absolument entrer un des pays autorises
}else if ( $country != "Belgique" && $country != "Luxembourg" && $country != "France" && $country != "Pays-bas" ) {
$error = "0-16";
}
//je verifie si le bouton radio coche n'est pas 10
else if ($promotioncases =="10" )
{ $error = "0-20";}
/**
* GESTION DE LA LIVRAISON
*/
switch($livraison ){
//on teste pour savoir si le pays est bien BE pour la belgique
//on teste pour savoir si nous sommes bien en belgique
case '(MONDIAL-RELAY-BELGIQUE)3 euro(s)':
// if(!filter_var($c, FILTER_VALIDATE_INT)){
if($cb_PAYS != "BE"){
$error = "0-8";
}
// if($cb_PAYS != "BE" || $cb_PAYS != "FR" ){
// $error = "0-14";
//}
if($pays !== "Belgique" and $cb_PAYS == "BE"){
$error = "0-17";
}
if($pays === "Belgique" and $cb_PAYS != "BE"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien FR pour la france
//on teste pour savoir si nous sommes bien en france
case '(mondial relay-FRANCE)4 euro(s)':
if($cb_PAYS != "FR"){
$error = "0-8";
}
//if($pays !== "France" || $cb_PAYS != "FR"){
// $error = "0-14";
//}
if($pays !== "France" and $cb_PAYS == "FR"){
$error = "0-17";
}
if($pays === "France" and $cb_PAYS != "FR"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien LU pour le luxembourg
//on teste pour savoir si nous sommes bien au luxembourg
case '(mondial relay-LUXEMBOURG)3 euro(s)':
if($cb_PAYS != "LU"){
$error = "0-8";
}
// if($pays !== "Luxembourg" || $cb_PAYS != "LU"){
// $error = "0-17";
//}
if($pays !== "Luxembourg" and $cb_PAYS == "LU"){
$error = "0-17";
}
if($pays === "Luxembourg" and $cb_PAYS != "LU"){
$error = "0-19";
}
break;
//on teste pour savoir si le pays est bien NL pour les pays-bas
//on teste pour savoir si nous sommes bien aux pays pas
case '(MONDIAL-RELAY-PAYS-BAS)5 euro(s)':
if($cb_PAYS != "NL"){
$error = "0-8";
}
// if($pays !== "Pays-bas" || $cb_PAYS != "NL"){
// $error = "0-17";
//}
if($pays !== "Pays-bas" and $cb_PAYS == "NL"){
$error = "0-17";
}
if($pays === "Pays-bas" and $cb_PAYS != "NL"){
$error = "0-19";
}
break;
//********************************
//on teste les envois postaux******
//**********************************
//si on choisit frais de livraison pays le pays choisi doit etre pays bas
case '(POSTE-ENVELLOPPE-PAYS-BAS)2 euro(s)':
if( $pays != "Pays-bas") {
$error = "0-17";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre belgique et les 3 point doivent etre remplit
case '(POSTE-COLIS-BELGIQUE_point)5.50 euro(s)':
if($pays != "Belgique") {
$error = "0-17";
}
if( !$adressepoint || !$cppoint || !$villepoint) {
$error = "0-9";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre belgique
case '(POSTE-ENVELLOPPE-belgique)1 euro(s)':
case '(POSTE-COLIS-BELGIQUE)6.50 euro(s)':
if($pays != "Belgique") {
$error = "0-17";
}
break;
//si on choisit frais de livraison pays le pays choisi doit etre luxembourg
case '(POSTE-ENVELLOPPE-LUXEMBOURG)1.50 euro(s)':
if($pays != "Luxembourg") {
$error = "0-17";
}
break;
case '(POSTE-ENVELLOPPE-FRANCE)4 euro(s)':
if($pays != "France" || $cb_PAYS != "FR") {
$error = "0-17";
}
break;
//default:
//aucune erreur detectée
//$error = "Aucune erreur detectée "; //tu pourras retirer ce $error = quand tout marchera bien
}
//********************************
//fin teste les envois postaux******
//**********************************
// AUTRE ERREUR
//message alertes si autre probleme
if ($promotioncases =="20" && ($nouveau_prix_promo_int != $prix_total_int ) )
{ $error = "0-12";}
// Dernier code d'erreur si c'est pas bon pour la commande
else if (!$commande) {
$error = "0-21";
}
//une fois tous les tests terminés..
// tu peux faire le echo de ton erreur si il y en a une... ou faire le reste de ton code
if(!empty($error)){
echo $error;
//sinon on insert en bdd et ton envoi de mail
}else{