traitement d'une chaine en tableau
Posté : 12 juil. 2012, 23:29
Bonjour,
J'ai une variable dans lequele je concatène une seconde variable, le tout dans une requette.
La seconde variable est passée comme un array ?
repasPropose.dietaryOptions=Array
le code, réception de la variable isset($_POST['checkb'] sous la forme "Diabetique, Vegetarian, Vegan, etc... :
Merci
J'ai une variable dans lequele je concatène une seconde variable, le tout dans une requette.
La seconde variable est passée comme un array ?
repasPropose.dietaryOptions=Array
le code, réception de la variable isset($_POST['checkb'] sous la forme "Diabetique, Vegetarian, Vegan, etc... :
if(isset($_POST['checkb'])) {
$varCheck=$_POST['checkb'];
foreach ($varCheck as $value) {
if ($value=='Diabetique') $Diabetique= "AND repasPropose.dietaryOptions = 'Diabetique'";
if ($value=='Vegetarian') $Vegetarian= "AND repasPropose.dietaryOptions = 'Vegetarian'";
if ($value=='Vegan') $Vegan= "AND repasPropose.dietaryOptions = 'Vegan'";
if ($value=='No sugar') $NoSugar= "AND repasPropose.dietaryOptions = 'No sugar'";
if ($value=='100% organic') $Organic= "AND repasPropose.dietaryOptions = '100% organic'";
if ($value=='No nuts') $NoNuts= "AND repasPropose.dietaryOptions = 'No nuts'";
if ($value=='Low fat') $LowFat= "AND repasPropose.dietaryOptions = 'Low fat'";
if ($value=='Gluten free') $GlutenFree= "AND repasPropose.dietaryOptions = 'Gluten free'";
if ($value=='No milk') $NoMilk= "AND repasPropose.dietaryOptions = 'No milk'";
}
}
$sql1=' ';
$Diab=(isset($Diabetique))?$sql1.=$Diabetique:'';
$Vege=(isset($Vegetarian))?$sql1.=$Vegetarian:'';
$Vega=(isset($Vegan))?$sql1.=$Vegan:'';
$NoSu=(isset($NoSugar))?$sql1.=$NoSugar:'';
$Orga=(isset($Organic))?$sql1.=$Organic:'';
$NoNu=(isset($NoNuts))?$sql1.=$NoNuts:'';
$LowF=(isset($LowFat))?$sql1.=$LowFat:'';
$Glut=(isset($GlutenFree))?$sql1.=$GlutenFree:'';
$NoMi=(isset($NoMilk))?$sql1.=$NoMilk:'';
echo $sql1;
Ensuite dans ma requête :
$sql="SELECT *,repasPropose.id AS idRepas,repasPropose.description AS descriptionRepas
FROM repasPropose
JOIN compteUtilisateur ON repasPropose.idCompteUtilisateur=compteUtilisateur.id
WHERE compteUtilisateur.ville = '".$villeQuery."'
AND compteUtilisateur.etatUSA = '".$stateQuery."'
".$sql1."
AND repasPropose.productType = ". $idProductQuery;
J'affiche la requête :
Code : Tout sélectionner
SELECT *,repasPropose.id AS idRepas,repasPropose.description AS descriptionRepas FROM repasPropose JOIN compteUtilisateur ON repasPropose.idCompteUtilisateur=compteUtilisateur.id WHERE compteUtilisateur.ville = 'austin' AND repasPropose.dietaryOptions = 'Array' AND repasPropose.productType = 1