Je suis en stage et je dois actuellement développer une petite application qui permettra aux utilisateur de connaitre la résistance thermique de leurs murs.
Il dois pour cela rentrer le type de mur et son épaisseur.
J'ai une base données contenant les murs avec un chiffre lambda et une categorie (isolation ou construction).
Lorsque je recherche à calculer R (resistance thermique) plusieurs erreurs se produisent :
- Une valeur (epaisseur) n'est pas prise en compte
- Un if me fait un truc très foireux !! (il passe dans le if... puis dans le else)
voici le code php:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 $cnx = mysql_connect("localhost", "root", "") or die("Erreur de connexion MySQL"); // Connexion à MySQL mysql_select_db("isolation"); // Sélection de la base $R = 0; //Calcul de la résistance thermique $i = 1; while ($i < 8) { if ($_POST['epaisseur'.$i.''] != "") //Si l'utilisateur a rentré une épaisseur... { $mur = $_POST['mur'.$i.'']; //La variable mur prend la valeur entrée dans le champs mur par l'utilisateur echo $mur;?><br /><?php $sql = "SELECT nom, Lambda FROM murs WHERE nom='$mur'"; //On recherche tous les nom de mur et leur lambda pour le mur séléctionné par l'utilisateur $requete = mysql_query($sql, $cnx) or die("Erreur dans $sql"); while ($resultat = mysql_fetch_array($requete)) { ?>Lambda : <?phpecho $resultat['Lambda'];?><br /><?php $R += (($_POST['epaisseur'.$i.''] / 100)/ $resultat['Lambda']); //On ajoute à R la valeur trouvée par le calcul } ?>R = <?php echo $R ?><br /><?php; } else // La variable n'est pas renseignée { ?>Epaisseur <?php echo $i; ?> non renseignee<br /><?php } $i++; }
le code html/php d'affichage
Et ce qui s'affiche en résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 <form name="poster" action="index.php" method="POST"> <?php $i = 1; while ($i < 8) { ?> <div id="titre"> Epaisseur <?php echo $i ;?><br /> </div> Type de mur : <select name="mur<?php echo $i; ?>"> <?php $cnx = mysql_connect("localhost", "root", "") or die("Erreur de connexion MySQL"); // Connexion à MySQL mysql_select_db("isolation"); // Sélection de la base $sql = "SELECT nom FROM murs"; $requete = mysql_query($sql, $cnx) or die("Erreur dans $sql"); while ($nom = mysql_fetch_array($requete)) { ?> <option value="<?php echo $nom['nom'] ?>"><?php echo $nom['nom'] ?></option> <?php } mysql_close($cnx); ?> </select> Epaisseur (en cm) : <input type="text" name="epaisseur<?php echo $i; ?>" /> Surface (en m²) : <input type="text" name="surface<?php echo $i; ?>" /> <br /> <br /> <?php $i++; } ?> <input type="submit" name="soumettre" value="envoyer" /> </form>
Merci pour votre aideBrique monomur
Lambda :
R = 1.5384615384615
Epaisseur 1 non renseignee
Ouate de cellulose
Lambda :
R = 4.0384615384615
Epaisseur 2 non renseignee
Panneaux en contreplaqu�
R = 4.0384615384615
Epaisseur 3 non renseignee
R = 4.0384615384615
Partager