Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2006, 12h59   #1
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
Par défaut Comparaison entre deux variables

Bonjour,

J'essaye de comparer deux valeurs numérique contenues dans deux variables :

Code :
1
2
3
4
 
if (prix(y) < montant) Then
Response.write "Ce montant est inférieur à " & montant
end if
mais ça marche pas

merci
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 13h02   #2
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Salut,

prix(y) est une variable ? Je ne comprend pas trop, ça ressemble plus à un appel de fonction..

Ca te retourne bien un entier ?

A+
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 13h10   #3
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
pour mieux comprendre :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
If Request("action") = "calcul" Then
sql = "SELECT * FROM baremes"
Set prod = Server.CreateObject("ADODB.Recordset")
prod.Open sql, conn, 3, 3
'
dim prix(20)
dim x
'
x = 1
'
Response.write "Montant = " & Request("montant") & "<BR>"
montant = Request("montant")
'
if not(prod.eof) then
DO WHILE NOT prod.EOF
'
prix(x) = prod.fields("tranche1")
x = x + 1
'
prod.movenext
loop
'
End if
'
y = 1
x = x - 1
'
Response.write "Le nombre de record est de : " & x & "<BR>"
for i = 1 to x
 
Response.write "-----------------------------------------------" & "<BR>"
Response.write "Le motant dans la boucle est égal à : " & prix(y) & "<BR>"
if (prix(y) < montant) Then
'ElseIf (heure < 18) Then
Response.write "<B>" & "Ce montant est inférieur à " & montant & "</B>" & "<BR>"
Response.write "-----------------------------------------------" & "<BR>"
End if
'
y = y + 1
next
'
End if
merci
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 14h11   #4
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 810
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 810
Points : 3 011
Points : 3 011
Bonjour,

Comme les variables ne sont pas typées en VbScript, je tenterai ça :

Code :
1
2
 
if cDbl(prix(y)) < cDbl(montant)) Then
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h04   #5
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
ça marche pas non plus
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h23   #6
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Fait un print de ce que te retourne prod.fields("tranche1") pour voir si c'est bien un entier ou un chiffre qui peut supporter une comparaison.
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h37   #7
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
voici le résultat :

Dans la base egal le champs prod.fields = 10
Dans la base egal le champs prod.fields = 20
Dans la base egal le champs prod.fields = 30
Dans la base egal le champs prod.fields = 40
Dans la base egal le champs prod.fields = 50
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h39   #8
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 317
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 317
Points : 35
Points : 35
si tu as msn on peu voir ça ensemble en direct ?
delavega est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h42   #9
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Désolé je n'ai pas MSN, et je ne suis pas un pro de VB.. Je suis plus Java/PHP..

En ce qui concerne ton souci, essai de faire un print des valeurs avant cette ligne :

Code :
1
2
3
 
// ici afficher prix(y) et montant
if (prix(y) < montant) Then
Sinon, il y a un truc peut-être à voir au niveau des parenthèses, enlève les et essaie avec :

Code :
1
2
 Dim comparePrix = prix(y)
If comparePrix < montant Then
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h36.


 
 
 
 
Partenaires

Hébergement Web