bonjour,

on m'a demandé que des valeurs entrées dans un formulaire soit ensuite avec un chiffre après la virgule pour ce faire j'ai utilisé la fonction number_format() mais quand j'éxécute ma requète n'est plus bonne alors qu'avant elle fonctionnait très bien.

while ($i<$nbGeometrie && !$cptGeometrie)
{
$val1=$geometrieValeurs[$i*3];
//pour mettre un chiffre après la virgule
$val1=number_format($val1, 1, ',', '');
//si le premier champ est renseigné, la dimension sera prise en compte dans la requete
if ($val1!=="")
{
$cptGeometrie++;
$val2=$geometrieValeurs[$i*3+1];
$val2=number_format($val2, 1, ',' ,'');
$tempGeometrie=$geometrie[$i];

//si en plus il y a le deuxième champ, on prendra la valeur dans la fourchette
if ($val2!=="")
{
echo "<TR><TD><LI><DIV class='sousrubrique'>$val1 <= {$tempGeometrie[1]} <= $val2 </DIV></LI></TD></TR>";
$requete.=" AND ((d.fk_id_Dim={$tempGeometrie[0]} AND d.valeur BETWEEN $val1 AND $val2)";
}

//sinon ce sera une égalité
else
{
echo "<TR><TD><LI><DIV class='sousrubrique'>{$tempGeometrie[1]} = $val1 </DIV></LI></TD></TR>";
$requete.=" AND ((d.fk_id_Dim={$tempGeometrie[0]} AND d.valeur=$val1)";
}
}
$i++;
}

while ($i<$nbGeometrie)
{
$val1=$geometrieValeurs[$i*3];
//mettre un chiffre après la virgule
$val1=number_format($val1, 1, ',', '');
if ($val1!=="")
{
$cptGeometrie++;
$val2=$geometrieValeurs[$i*3+1];
$val2=number_format($val2, 1, ',', '');
$tempGeometrie=$geometrie[$i];



if ($val2!=="")
{
echo "<TR><TD><LI><DIV class='sousrubrique'>$val1 <= {$tempGeometrie[1]} <= $val2 </DIV></LI></TD></TR>";
$requete.=" OR (d.fk_id_Dim={$tempGeometrie[0]} AND d.valeur BETWEEN $val1 AND $val2)";
}
else
{
echo "<TR><TD><LI><DIV class='sousrubrique'>{$tempGeometrie[1]} = $val1 </DIV></LI></TD></TR>";
$requete.=" OR (d.fk_id_Dim={$tempGeometrie[0]} AND d.valeur=$val1)";
}
}
$i++;
}

//s'il y a des critères sur les dimensions, on regroupe les résultats et on les compte
if($cptGeometrie)
{
$requete.=") GROUP BY (p.id_Piece) HAVING COUNT(*)=";
if ($cptMelanges)
{
$cpt=$cptGeometrie*$cptMelanges;
$requete.="$cpt";
}
else
{
$cpt=$cptGeometrie*$nb;
$requete.="$cpt";
}
}
else
{
if ($cptMelanges)
{
$cpt=$cptMelanges*$nbGeometrie;
$requete.=" GROUP BY (id_Piece) HAVING COUNT(*)=$cpt";
}
else
{
$cpt=$nb*$nbGeometrie;
$requete.=" GROUP BY (id_Piece) HAVING COUNT(*)=$cpt";
}
}
echo " la requete: " . $requete;
$resultat=mysql_query($requete);
$nbLignes=mysql_num_rows($resultat);//$resultat contient les pieces bonnes en dimensions
voila le code