Simplification code : condition multiple if PHP
Posté : 11 juin 2018, 22:14
Bonjour je voudrais simplifier le code ci-dessous, je vais essayer d'être le plus explicite possible :
Formulaire:
Connexion:
Traitement php:
Pour une entrée dans le formulaire,
L’étudiant 001 a lui seul une maison de couleur bleue et une maison de couleur noire
Pour une autre entrée dans le formulaire,
L’étudiant 002 n’a qu’une seule maison de couleur bleue
Pour une autre entrée dans le formulaire,
L’étudiant 003 a lui seul une maison de couleur noire et une autre maison de couleur rouge
Formulaire:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8_encode" />
<link rel='stylesheet' href='css_file1.css' type='text/css' />
</head>
<body>
<form method="POST" action=“traitement.php">
<table>
<tr>
<td> Etudiant*:</td>
<td> <input type="text" name=“numero" placeholder="saisir le numero étudiant" required="required" /></td>
</tr>
<tr>
<td> Cocher les couleurs:</td>
<td> <input type="checkbox" name=“couleur[]" value=“rouge">
<label for=" couleur ">rouge</label>
<input type="checkbox" name=" couleur[]" value=“noir">
<label for=" noir">Visa</label>
<input type="checkbox" name=" couleur[]" value=“bleue">
<label for=" couleur ">bleue</label>
</td>
</tr>
</table>
</body>
</html>
Connexion:
<?php
$connexion=mysqli_connect("localhost","root","") or die ("erreur de connexion au serveur");
mysqli_select_db($connexion, "baseBD") or die("erreur de connexion à la base de donnée");
?>
Traitement php:
<?php
include(connexion.php");
$var1=$_POST[‘couleur '];
$var2=$_POST[‘numero '];
$req="INSERT INTO ETUDIANT (Id_etudiant , numero) VALUES (' ', '$numero')";
if (mysqli_query($connexion, $req))
{
$Id_cc=mysqli_insert_id($connexion2);
}
$Id_save=$Id_cc;
foreach($_POST[" couleur "] as $check)
{
if( !isset($checkscouleur) ){ $checkscouleur = $check; }
else{ $checkscouleur.= ", ".$check; }
}
$Id_1='1'; //1 : rouge
$Id_2='2'; //2 : bleue
$Id_3=‘3'; //3 : noire
if($checkscouleur ==‘rouge')
{
$jointure1="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES (‘ ', '$Id_save‘, ‘$id_1’)";
mysqli_query($connexion, $jointure1);
}
if($checkscouleur ==‘bleue')
{
$jointure2="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_2‘)";
mysqli_query($connexion, $jointure2);
}
if($checkscouleur ==‘noire')
{
$jointure3="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_3‘)";
mysqli_query($connexion, $jointure3);
}
if($checkscouleur ==‘rouge, bleue‘)
{
$jointure1="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES (‘ ', '$Id_save‘, ‘$id_1’)";
$jointure2="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES (‘ ', '$Id_save‘, ‘$id_2’)";
mysqli_query($connexion, $jointure1);
mysqli_query($connexion, $jointure2);
}
if($checkscouleur ==‘bleue, noire')
{
$jointure2="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_2‘)";
$jointure3="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_3‘)";
mysqli_query($connexion, $jointure2);
mysqli_query($connexion, $jointure3);
}
if($checkscouleur ==‘rouge, bleue, noire')
{
$jointure1="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_1‘)";
$jointure2="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_2‘)";
$jointure3="INSERT INTO ETUDIANT_MAISON (id_etudiant_maison, id_etudiant, id_maison) VALUES ('', '$Id_save ', '$Id_3‘)";
mysqli_query($connexion, $jointure1);
mysqli_query($connexion, $jointure2);
mysqli_query($connexion, $jointure3);
}
<?
CommentsPour une entrée dans le formulaire,
L’étudiant 001 a lui seul une maison de couleur bleue et une maison de couleur noire
Pour une autre entrée dans le formulaire,
L’étudiant 002 n’a qu’une seule maison de couleur bleue
Pour une autre entrée dans le formulaire,
L’étudiant 003 a lui seul une maison de couleur noire et une autre maison de couleur rouge


