Décrémentation + boucle while

poupilou
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 9 Fév 2004

Message le Ven Juil 20, 2007 14:23

Merci baptiste911 pour ta proposition mais ta requête ne marche pas tout le temps, il y a certains budgets qui ne renvoient pas de réponse.

J'ai presque trouvé une solution mais j'ai quelques soucis pour limiter le nombre de résultats dans ma boucle while.

J'ai crée en faites une autre table qui se nomme "poids" et dans laquelle j'ai mis tous les poids qui m'intéressent (quelques milliers) de 0.01, 0.02, 0.03, 0.04, 0.05,... 1.01, 1.02, 1.03, etc.... et qui me serviront à multiplier chaque poids de cette table par le prix correspondant dans la table "prix".

J'utilise cette requete :

$result = mysql_query("SELECT poids FROM poids");
while($poids = mysql_fetch_array($result))
{
$result2 = mysql_query("SELECT (".$poids[poids]."*prix) AS prix22, prix, poids_inf, poids_sup, FROM prix WHERE poids_inf<='".$poids[poids]."' AND poids_sup>='".$poids[poids]."' ORDER BY prix22 DESC LIMIT 1");
$prix1 = mysql_fetch_array($result2);
if($budget>=$prix1[prix22]){
$poids_maxi = str_replace(",",".",number_format($poids[poids]*$prix1[prix]),2,",",""));
echo "poids : ".$poids[poids]." ==> prix : $poids_maxi<br>";
}
}


Le problème c'est que la boucle while me liste tous les poids du plus petit jusqu'au plus grand (cette dernière réponse correspond à la bonne réponse : au poids le plus grand en fonction du budget entré), comment faire pour afficher uniquement la dernière réponse et pas celles d'avant ?

Le "LIMIT 1" ne fonctionne pas dans ma deuxième requête ! Comment faire :roll:

Merci pour votre aide.

Décrémentation + boucle while

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités