chaine caractères

chaine caractères - ASP - Programmation

Marsh Posté le 23-04-2007 à 16:35:15    

Bonjour,
 
j'ai donc un problème en asp:
j'ai une suite de boucle if, qui me renvoie (ou pas) un chiffre...
Moi je veux récupérer l'ensemble de mes chiffres sous la forme suivante:
 
chiffre1;chiffre2;chiffre3;chiffre4
 
Chaque chiffre est donc séparé du suivant par un ";"
 
j'ai donc fait ceci:

Citation :

chaine_ms = ""
 i = "0"
 
 'case28
 if request.form("case28" ) <> "" then
  chaine_ms = (chaine_ms) &("1619" ) &";"
  i = i + 1
 end if
 
 'case29
 if request.form("case29" ) <> "" then
  chaine_ms = (chaine_ms) &("1620" ) &";"
  i = i + 1
 end if
 
 'case30
 if request.form("case30" ) <> "" then
  chaine_ms = (chaine_ms) &("1623" ) &";"
  i = i + 1
 end if
 
 'case31
 if request.form("case31" ) <> "" then
  chaine_ms = (chaine_ms) &("1624" ) &";"
  i = i + 1
 end if
 
 'case32
 if request.form("case32" ) <> "" then
  chaine_ms = (chaine_ms) &("1622" ) &";"
  i = i + 1
 end if
 
 'case33
 if request.form("case33" ) <> "" then
  chaine_ms = (chaine_ms) &("1625" ) &";"
  i = i + 1
 end if


 
Lorsque tout mes boucles if sont parcourues j'obtient donc:

Citation :

61619;1620;1623;1624;1622;1625;


 
Mon problème est donc qu'il y a un ";" en trop: celui après le dernier chiffre...
J'ai donc donc mis une variable "i" qui me permet de savoir combien de boucles if sont parcourues, donc combien de ";" sont présents dans ma chaines finale et donc quelle est la position du dernier que je souhaite virer...
 
Mais je ne sais pas comment faire pour l'enlever....
 
 
Merci d'avance.

Reply

Marsh Posté le 23-04-2007 à 16:35:15   

Reply

Marsh Posté le 23-04-2007 à 17:21:28    

Pourquoi ne pas tout simplement ne pas l'ajouter lorsque tu arrives à la derniere iteration ?
 
[citation]
chaine_ms = ""  
 i = "0"  
 ...  
 
 'case33  
 if request.form("case33" ) <> "" then  
  chaine_ms = (chaine_ms) &("1625" )
   
 end if
 
if i<nbreDeBoucles then  
chaine_ms = chaine_ms&";"
end if
 
 
[/citation]
 
Tu ne l'ajoute pas a la fin de chaque chaine mais que si le i < au nbre de boucle.
 
QU'en penses tu ?
 

Reply

Marsh Posté le 24-04-2007 à 23:40:43    

a la fin tu fais :
 
if chaine_ms<>"" then
chaine_ms = Left(chaine_ms, Len(chaine_ms)-1)
end if
 
Ca retirera le dernier point virgule

Reply

Marsh Posté le 25-04-2007 à 09:42:42    

sinon, en passant, un "if" n'est pas une boucle, mais une condition.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed