|
Dernière réponse | ||
---|---|---|
Sujet : [ASP/VBSCRIPT] Help me plz.... | ||
dilyfe |
|
Aperçu |
---|
Vue Rapide de la discussion |
---|
dilyfe |
|
HappyHarry | fais voir ton code now |
Giz_ | :bounce: |
Giz_ | j'ai essaié votre truc mais ca ne marche tjs pas :( |
Giz_ | ha bon...
Sinon merci a tout les deux pour l'aide! thx [:giz] |
HappyHarry | :non: |
Giz_ | non!
mais Execute est une collection de l'objet Command non ?...et pas Connexion dc ca serait plutot: Set Connection = Server.CreateObject("ADODB.Command" ) non ? [jfdsdjhfuetppo]--Message édité par Giz_--[/jfdsdjhfuetppo] |
dilyfe | Tu avais essayé avec ca en lieu et place de ton BaseTest.Open reqSQL, BaseLink ???
|
dilyfe |
|
HappyHarry | pour les requetes de type INSERT c la methode execute de l'objet connection qu'il faut utiliser ;) |
Giz_ | ca ne marche pas non plus....en fait j'ai pas essaié mais je crois que faire de fois de suite un BaseTest.Open reqSQL,BaseLink ne gene en rien |
dilyfe | Et en rajoutant un basetest.close apres execution de la requete, ca donne koi? |
Giz_ | normal que ca commence a zeros:
toute les variables correspondand aux champs de chaque colonne de la première ligne ont un suffixe 0. je te l'ai deja dit si je fais un response.write de ma requete reqSQL j'ai: INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('2000', 'lycéé', 'term', 'bac', 'aucun') mais si DANS la boucle je fais: BaseTest.Open reqSQL,BaseLink Ca merde ! si ds ma boucle je fais Response.write reqSQL j'ai la requete avec chacune des valeurs de chaque champ de chaque ligne de mon tableau. ex: Response.write reSQL 'me donnne ds le cas de 4 itération par ex: INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('2000', 'lycéé', 'term', 'bac', 'aucun') INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('1999', 'titi', '2ème année', 'DUT', 'na') INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('1990', 'toto', 'iup', 'license', 'licence') INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('1995', 'iup', 'deug', 'deug', 'aucun') voilà c kler ou pas ? [jfdsdjhfuetppo]--Message édité par Giz_--[/jfdsdjhfuetppo] |
dilyfe | Ok , c moi ki est pas reveillé, si tu fais un response.write de ta requete, ca donne koi parcke j'executes ton code et moi ca marche bien. Ton indice commence à 0, normal ? |
Giz_ | en fait c le code qui correspond a la suite du code presenté ds mon otre topic :D |
Giz_ | les variables en gras servent a determiner ma variable de Session:
('"&Session(annee_scolaire)&"', '"&Session(etablissement_frequente)&"', '"&Session(classe_suivie)&"', '"&Session(diplome_suivi)&"', '"&Session(diplome_obtenu)&"')" par ex: a la premiere itération je doit avoir: (sans remplacer les variables par leur valeur pour etre plus kler:) ('"&Session(annee0)&"', '"&Session(etablissement0)&"', '"&Session(classe0)&"', '"&Session(diplome_suivi0)&"', '"&Session(diplome_obtenu0)&"')" parce que j'ai un tableau auparavant que ce que dynamiquement (le nombre de ligne est saisi par l'utilisateur) l'enregistrement ds mes variables de Session se fait comme suit: <% dim i,indice i = (Request.Form("indice" )) for indice = 0 to i annee_scolaire = "annee" & indice etablissement_frequente = "etablissement" & indice classe_suivie = "classe" & indice diplome_suivi = "diplome_suivi" & indice diplome_obtenu = "diplome_obtenu" & indice Session(annee_scolaire) = Request.Form(annee_scolaire) Session(etablissement_frequente) = Request.Form(etablissement_frequente) Session(classe_suivie) = Request.Form(classe_suivie) Session(diplome_suivi) = Request.Form(diplome_suivi) Session(diplome_obtenu) = Request.Form(diplome_obtenu) next Session("indice" ) = i Response.redirect ("Page6.asp" ) %> Compris ?? |
dilyfe | Non pas du tout, oublies ce que je t'ai dit... je pensais que tu faisais une agrégation du nom de champ + indice pour insérer dans un champ annee_scolaire1 par exemple, mais c pas le cas apparement...
Kestion, à quoi servent les variables que j'ai mis en gras vu que tu ne t'en sers pas par la suite et donnes moi la structure de ta table dim reqSQL, indice for indice = 0 to Session("indice" ) annee_scolaire = "annee" & indice etablissement_frequente = "etablissement" & indice classe_suivie = "classe" & indice diplome_suivi = "diplome_suivi" & indice diplome_obtenu = "diplome_obtenu" & indicereqSQL = "INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('"&Session(annee_scolaire)&"', '"&Session(etablissement_frequente)&"', '"&Session(classe_suivie)&"', '"&Session(diplome_suivi)&"', '"&Session(diplome_obtenu)&"')" 'Response.write (reqSQL) next |
Giz_ | Quand je fais un response.write de reqSQL, j'ai très les valeurs de chaque champ (affichés après le VALUES)
ca m'affiche exactement comme ca par ex: INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('2000', 'lycéé', 'term', 'bac', 'aucun') toi tu voudrais dire que mes nom de champs de ma table sont pris pour les variables (après le INSERT INTO)? fo que je change le nom de mes champs de ma bdd alors ...ou bien de mes variables... [jfdsdjhfuetppo]--Message édité par Giz_--[/jfdsdjhfuetppo] |
dilyfe | A mon avis c qu'il ne trouves pas un de tes champs vu ke tu génères les champs à insérer dynamiquement, fais un response.write de reqsql et vérifies k'il génères les bons noms de champs par rapport à la structure de ta table
Oh putain, ton pb c que tu rempli t variables annee_scolaire, etc et que après tu ne t'en sers pas en tant que variables... ==>reqSQL = "INSERT INTO cursus_scolaire (" & annee_scolaire & "," & etablissement_frequente & ", " & etc... Voila! Et tu fais ce que je t'ai dis plus haut pour executer tes requetes sinon tu va etre obligé de refaire un For pour l'execution de tes reketes. A+ |
Giz_ | C ce que j'ai dit!
l'erreur pseudo exact est: "valeur qui peut etre mis a jour pour reqSQL" [jfdsdjhfuetppo]--Message édité par Giz_--[/jfdsdjhfuetppo] |
dilyfe | C koi l'erreur ? |
Giz_ | Oui mais l'erreur est la meme , meme si la requete est ds la boucle !! |
HappyHarry |
|
dilyfe | Bah t'executes chaque requete à chaque boucle...
.... BaseTest.Execute reqSQL Next |
Giz_ | up |
Giz_ | Voilà j'ai un projet tut a rendre mecredi et jsuis bloqué la :(
voilà je ne suis pas une star en VBSCRIPT...mon pb : dim reqSQL, indice for indice = 0 to Session("indice" ) annee_scolaire = "annee" & indice etablissement_frequente = "etablissement" & indice classe_suivie = "classe" & indice diplome_suivi = "diplome_suivi" & indice diplome_obtenu = "diplome_obtenu" & indice reqSQL = "INSERT INTO cursus_scolaire (annee_scolaire, etablissement_frequente, classe_suivie, diplome_prepare, diplome_obtenu) VALUES ('"&Session(annee_scolaire)&"', '"&Session(etablissement_frequente)&"', '"&Session(classe_suivie)&"', '"&Session(diplome_suivi)&"', '"&Session(diplome_obtenu)&"')" 'Response.write (reqSQL) next Pour indication ma boucle s'effectue 4 fois (au moins) donc la variable reqSQL prendra 4 valeur . cad 4 requete SQL différentes! dc je souhaite ecrire ds ma base via la commande: BaseTest.Open reqSQL, BaseLink Le bleme c que ie n'accepte pas la vaiable reqSQL pour la requete car c une variable a valeur multiple (4 requete !) Comment donc faire pour recuperer CHAQUE valeur de la variable dans une autre variable dont je me servirai pour l'ecriture ds la base! Fo faire une boucle car je ne sais pas combien de valeur pourra avoir la var reqSQL! Help me :cry: Un coup de main plz |