ASP : RE-recupérer la valeur que renvoi une fonction - Programmation
Marsh Posté le 14-05-2002 à 14:49:50
jultey a écrit a écrit : Salut, J'aimerais faire marcher cette fonction qui met la 1ere lettre en majuscule et les autres en minuscule. La fonction marche mais j'arrive pas a recupérer le resultat... J'ai essayé de plusieurs facons mais j'y arrive pas... Voila ou j'en suis : function maj_min(param) titre = Trim(param) plettre = Left(titre,1) taille = len(titre)-1 dlettre = Right(Trim(param),taille) prlettre = UCase(plettre) delettre = LCase(dlettre) param = prlettre & delettre end function constructeur = Request.QueryString("constructeur" ) url = Request.QueryString("url" ) categorie = Request.QueryString("categorie" ) ------A mon avis c'est la que ca merde--------- constructeur = maj_min(constructeur) categorie = maj_min(categorie) ----------------------------------------------- Merci a tous ! (j'ai deja posté ce post ce matin mais personne l'a lu p'etre parce que j'avais pas mit de point d'interrogation a coté du titre... Je re-essaie une 2eme fois, apres j'arrete, promis !) |
essaye return ta_variable avt le end function
Marsh Posté le 14-05-2002 à 14:56:44
Marche pas, ca me met
Erreur d'exécution Microsoft VBScript erreur '800a000d'
Type incompatible: 'return'
Marsh Posté le 14-05-2002 à 15:00:39
alors fais
var toto = maj_min(param) et il te ramènera ta variable!
Marsh Posté le 14-05-2002 à 15:11:41
Voila ce que ca me retourne :
Erreur d'exécution Microsoft VBScript erreur '800a000d'
Type incompatible: 'var'
Mon code etait :
function maj_min(param)
titre = Trim(param)
plettre = Left(titre,1)
taille = len(titre)-1
dlettre = Right(Trim(param),taille)
prlettre = UCase(plettre)
delettre = LCase(dlettre)
param = prlettre & delettre
end function
var toto = constructeur = maj_min(constructeur)
var tata = maj_min(categorie)
constructeur = toto
categorie = tata
Marsh Posté le 14-05-2002 à 15:13:21
CORRECTION
jultey a écrit a écrit : var toto = maj_min(constructeur) var tata = maj_min(categorie) constructeur = toto categorie = tata |
ca marche toujours pas:Type incompatible: 'var'
Marsh Posté le 14-05-2002 à 15:17:29
ta fonction tu l'appelle bien d'un autre endroit alors tu fais :
toto = maj_min("ce_q_tu_veux" )
avec ta fonction qui est :
function maj_min(param)
titre = Trim(param)
plettre = Left(titre,1)
taille = len(titre)-1
dlettre = Right(Trim(param),taille)
prlettre = UCase(plettre)
delettre = LCase(dlettre)
param = prlettre & delettre
end function
[jfdsdjhfuetppo]--Message édité par gwen2709 le 14-05-2002 à 15:18:12--[/jfdsdjhfuetppo]
Marsh Posté le 14-05-2002 à 15:22:36
Oui, mais "ce_que_je_veux" dans ma page c'est pas une string... Enfin si, c'est une variable constructeur qui contient le nom du constructeur...
je réessaie.
Marsh Posté le 14-05-2002 à 15:24:36
jultey a écrit a écrit : Oui, mais "ce_que_je_veux" dans ma page c'est pas une string... Enfin si, c'est une variable constructeur qui contient le nom du constructeur... je réessaie. |
bah passe la en string car tu peux pas effectuer tes OP de ta fonction sur d'autres types q des strings........
Marsh Posté le 14-05-2002 à 15:27:07
Je pense avoir fait ce que tu m'as dit... Regarde . Ou alors y'a un truc que j'ai pas pigé dans ton explication...
function maj_min(param)
titre = Trim(param)
plettre = Left(titre,1)
taille = len(titre)-1
dlettre = Right(Trim(param),taille)
prlettre = UCase(plettre)
delettre = LCase(dlettre)
param = prlettre & delettre
end function
constructeur = Request.QueryString("constructeur" )
url = Request.QueryString("url" )
categorie = Request.QueryString("categorie" )
contructeur = maj_min(constructeur)
categorie = maj_min(categorie)
sql = "SELECT driver_constructeur FROM driver WHERE driver_constructeur='"& constructeur &"' "
J'obtiens :
Le champ 'driver.driver_categorie' ne peut pas être une chaîne vide
Marsh Posté le 14-05-2002 à 15:36:32
jultey a écrit a écrit : Je pense avoir fait ce que tu m'as dit... Regarde . Ou alors y'a un truc que j'ai pas pigé dans ton explication... function maj_min(param) titre = Trim(param) plettre = Left(titre,1) taille = len(titre)-1 dlettre = Right(Trim(param),taille) prlettre = UCase(plettre) delettre = LCase(dlettre) param = prlettre & delettre end function constructeur = Request.QueryString("constructeur" ) url = Request.QueryString("url" ) categorie = Request.QueryString("categorie" ) contructeur = maj_min(constructeur) categorie = maj_min(categorie) sql = "SELECT driver_constructeur FROM driver WHERE driver_constructeur='"& constructeur &"' " J'obtiens : Le champ 'driver.driver_categorie' ne peut pas être une chaîne vide |
là OK c bon mais le problème vient du fait q dans ta table driver tu as un champ qui doit obligatoirement être renseigné et c'est le driver.driver_categorie!
Marsh Posté le 14-05-2002 à 15:40:13
gwen2709 a écrit a écrit : là OK c bon mais le problème vient du fait q dans ta table driver tu as un champ qui doit obligatoirement être renseigné et c'est le driver.driver_categorie! |
Ouai, mais lorsque je remplis mon formulaire, je remplis le champs "contructeur". Et c'est meme envoyé car sinon si le champ et vide, j'ai une fonction javascript qui ne poste pas le formulaire
Marsh Posté le 14-05-2002 à 16:25:52
Ca y est, j'ai trouvé !
Il fallait mettre :
maj_min = param
a la fin de la fonction
Au final, ca donne donc
function maj_min(param)
titre = Trim(param)
plettre = Left(titre,1)
taille = len(titre)-1
dlettre = Right(Trim(param),taille)
prlettre = UCase(plettre)
delettre = LCase(dlettre)
param = prlettre & delettre
maj_min = param
end function
constructeur = Request.QueryString("constructeur" )
categorie = Request.QueryString("categorie" )
contructeur = maj_min(constructeur)
categorie = maj_min(categorie)
Par contre, je me pose la question de savior comment faire si on doit passer 2 string en parametre et de les recuperer toutes les 2... Mais ceci est nue autre histoire...
Marsh Posté le 14-05-2002 à 16:35:49
jultey a écrit a écrit : (j'ai deja posté ce post ce matin mais personne l'a lu p'etre parce que j'avais pas mit de point d'interrogation a coté du titre... Je re-essaie une 2eme fois, apres j'arrete, promis !) |
heureusement que tout le monde ne fait pas comme ça
-> ça permet de modifier le message et/ou le titre
Et si c'est pour que le topic revienne en première page, suffit de poster dedans.
Marsh Posté le 14-05-2002 à 16:38:04
antp a écrit a écrit : heureusement que tout le monde ne fait pas comme ça http://forum.hardware.fr/edit.gif -> ça permet de modifier le message et/ou le titre Et si c'est pour que le topic revienne en première page, suffit de poster dedans. |
Merci pour tes explications. Je savais pas qu'on pouvait changer le titre...
J'f'rai plus, promis !
Marsh Posté le 14-05-2002 à 13:50:23
Salut,
J'aimerais faire marcher cette fonction qui met la 1ere lettre en majuscule et les autres en minuscule. La fonction marche mais j'arrive pas a recupérer le resultat... J'ai essayé de plusieurs facons mais j'y arrive pas... Voila ou j'en suis :
function maj_min(param)
titre = Trim(param)
plettre = Left(titre,1)
taille = len(titre)-1
dlettre = Right(Trim(param),taille)
prlettre = UCase(plettre)
delettre = LCase(dlettre)
param = prlettre & delettre
end function
constructeur = Request.QueryString("constructeur" )
url = Request.QueryString("url" )
categorie = Request.QueryString("categorie" )
------A mon avis c'est la que ca merde---------
constructeur = maj_min(constructeur)
categorie = maj_min(categorie)
-----------------------------------------------
Merci a tous !
(j'ai deja posté ce post ce matin mais personne l'a lu p'etre parce que j'avais pas mit de point d'interrogation a coté du titre... Je re-essaie une 2eme fois, apres j'arrete, promis !)