Décrémentation + boucle while
16 messages
• Page 2 sur 2 • 1, 2
- poupilou
- WRInaute discret

- Messages: 237
- Inscription: 9 Fév 2004
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 :
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
Merci pour votre aide.
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
Merci pour votre aide.
16 messages
• Page 2 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- MSN HRS : des éditeurs de MSN évaluent la qualité des sites web - 02-12-2005
- Suivre le Tour de France 2008 avec Google Street View - 03-07-2008
- Google se lance dans la recherche de blogs - 14-09-2005
- Google API : guide de développement de l'API Google - 20-09-2002
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
