Réponse acceptée !
Salut Remy,
d'abord, parce que je t'aimes bien, je te le dis :
j'espère que ce n'est pas une vraie IP, et un vrai login, sinon, tu vas apprendres à tes dépends à restaurer une base de données qu'un inconnnu a foutu en l'air (
je ne connais que des gentils ici, mais c'est quand même internet!)
pour la date,si tu veux la date du jour de l'insert tu écris :
VDate = Date()
Sinon, tu peux aussi l'avoir dans le form, et la traiter comme le reste (
request.form).
Je ne t'apprend rien si je te dis que, vraissemblablement, la valeur qui est insérée dans la colonne QTYM est en dehors de la plage permise. Suivant le provider, il peut y avoir diverses raisons (
je n'ai jamais essayé OLE DB sur MySQL), mais ça peut être simplement la taille de la chaine (
si c'est une chaine), la taillle de la valeur par rapport au type attendu (
si c'est un numérique), ...Il te faut le schéma de cette table (
types et tailles des champs) pour évaluer ce que tu peux y rentrer, et éventuellement mettre en place des traitements de validité des données (
genre, si la chaine fais len=25, je la tronque à 15, ou si le nombre de machins est plus grand que 47, on insère pas...)
Ce que tu peux faire, c'est temporairement désactiver l'exécution de la requete, et l'afficher pour te faire une idée de ce que tu envoies, des fois, c'est en voyant qu'on comprend. Ca donnerait (
en rouge ce que je touches) :
' Ici on construit la chaine de connexion ODBC
LE_DSN = "driver=MySQL ODBC 3.51 Driver;server=" & ServerAddress & ";db=" & DBName & ";user id=" & UID & ";pwd=" & Password & ";option=16386"
response.Write LE_DSN If False then ' Paramètre de connexion + connexion
Set MaConnexion = Server.CreateObject("ADODB.Connection")
MaConnexion.ConnectionTimeout = 30
MaConnexion.CommandTimeout = 30
MaConnexion.Open LE_DSN
VDate = "2010-04-03 "
VSemaine =45
VSpecialite = "MEC"
VQtyM = Request.Form("MECLM")
VQtyAP = Request.Form("MECLAP")
reqsql = "INSERT INTO effectif(Date1, Semaine, Specialite, QTYM, QTYAP) VALUES ('" & VDate & "','" & VSemaine & "', '" & VSpecialite & "', '" & VQtyM & "', '" & VQtyAP & "')"
MaConnexion.Execute(reqsql)
MaConnexion.Close
set MaConnexion = nothing
end if
il se peut que rien ne s'affiche, car je vois pas tout ton code, et il y a peut-être une instruction qui arrive après ce code, et qui response.redirect(blabla), qu'il faudrait aussi désactiver (temporairement)
à+
rvblogn
Je veux ton bien... et je l'aurais