Salut,
guigro a écrit :
<?php
if (($amiante=="")&($plomb=="")&($termites=="")&($dpe=="")&($carrez=="")){
print("Veuillez choisir au moins un diagnostic.<BR>\n");
}
else {
$select = $_POST['select'];
$amiante = $_POST['amiante'];
$aplomb = $_POST['plomb'];
$termites = $_POST['termites'];
$dpe = $_POST['dpe'];
$carrez = $_POST['carrez'];
}
?>
personnellement je le ferais plutôt comme ça :
<?php
// Si $_POST['amiante'] n'est pas vide OU $_POST['termites'] n'est pas vide OU empty($_POST['carrez'] n'est pas vide
if (empty($_POST['amiante']) OR empty($_POST['termites']) OR empty($_POST['carrez']))
{
$select = $_POST['select'];
$amiante = $_POST['amiante'];
$aplomb = $_POST['plomb'];
$termites = $_POST['termites'];
$dpe = $_POST['dpe'];
$carrez = $_POST['carrez'];
} else {
print("Veuillez choisir au moins un diagnostic.<BR>\n");
}
?>
Etant donné que tes variables $select, $amiante, etc ... ne sont déterminés qu'après la condition, je ne vois pas comment elle peuvent déterminer la condition
Parce que à 1er vu, même si la personne fais un choix, elle aura le message "Veuillez choisir au moins un diagnostic", il faudra soumettre le formulaire 2 fois de suite pour qu'il soit accepté (et encore j'en suis pas sur).
Je me suis peux être embrouillé, j'ai mal au crane
guigro a écrit :
Mais alors les valeurs de chaque $amiante etc... changent en fonction de la valeur de $select
Il faudrait déjà connaître les valeurs de cette variable, si c'est un pourcentage par exemple (*1, *1.25, *1.5, etc) c'est tout simple. Ou si le changement de valeur ce fait en fonction d'une grille tarifaire (dans ce cas un tableau serait certainement mieux non ?)
En admettant que ce soir un pourcentage qui est appliqué tu peux utiliser la fonction switch, de cette façon tu récupère la valeur de $logement pour faire le calcule plus loin dans le script :
<?php
switch ($select) {
case t1: //si select = t1
$logement= "1.10"; //On récupère une majoration 10%
break; // On a trouvé la valeur de $select on s'arrête
case t2: //si selevt = t2
$logement= "1.20"; //On récupère une majoration 20%
break; // On a trouvé la valeur de $select on s'arrête
case t3:
$logement= "1.30";
break;
case t4:
$logement= "1.40";
break;
case t5:
$logement= "1.50";
break;
case t6:
$logement= "1.60";
break;
}
?>
Modifié par Spark (14 Mar 2007 - 22:46)