Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1699 connectés 

 


Dernière réponse
Sujet : [ASP/VBSCRIPT] Help me plz....
dilyfe

HappyHarry a écrit a écrit :

fais voir ton code now  




 
Ouaip


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
dilyfe

HappyHarry a écrit a écrit :

fais voir ton code now  




 
Ouaip

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 a écrit a écrit :

Bah t'executes chaque requete à chaque boucle...
 
....
    BaseTest.Execute reqSQL
Next  



dilyfe

HappyHarry a écrit a écrit :

pour les requetes de type INSERT c la methode execute de l'objet connection qu'il faut utiliser  ;)  




 
Tout à fait...
 
Voila ton script qui marche très bien chez moi :
<%
Set Connection = Server.CreateObject("ADODB.Connection" )
Connection.open CONNECT_TEST ' Connection OLEDB, à toi de mettre ta chaine
 
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)"
  reqSQL = reqSQL & " VALUES('" & Session(annee_scolaire) & "','" & Session(etablissement_frequente) & "','" & Session(classe_suivie)
  reqSQL = reqSQL & "', '" & Session(diplome_suivi) & "','" & Session(diplome_obtenu) & "')"
  Response.write (reqSQL) & "<BR>"
  Connection.Execute reqSQL
Next
Connection.Close
Set Connection = Nothing
%>
Voila

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" & 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
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

Citation :

voilà je ne suis pas une star en VBSCRIPT...


 
je dirais plutot que t pas une star tout court  :D

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

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR