Probleme en asp

Probleme en asp - ASP - Programmation

Marsh Posté le 30-11-2003 à 22:53:27    

salut,
 
je n'arrive pas a mettre a jour un champ ds une table avec un update :
 
 sql = "UPDATE article " _
         & "SET    stock_dispo= stock_dispo-quantite" _
  & "WHERE  id_article=" & id_article
      objConn.Execute(sql)
 
alors que 'quantite' est recupere comme ca :
quantite=Server.HTMLEncode(Request.QueryString("quantite" ))
 
Quelqu'un aurait il une idee ?
 
Merci

Reply

Marsh Posté le 30-11-2003 à 22:53:27   

Reply

Marsh Posté le 30-11-2003 à 23:07:19    

poste la requête qui est passé à la bdd. le contenu de la variable sql quoi

Reply

Marsh Posté le 30-11-2003 à 23:11:22    

le contenu de la variable est un int et dans la variable quantite il recupere bien un chiffre mais quand la requete sexecute
sql = "UPDATE article " _
         & "SET    stock_dispo= stock_dispo-quantite" _
  & "WHERE  id_article=" & id_article
      objConn.Execute(sql)
j'obtiens ce message d'erreur sur la page web :  
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'  
 
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'quantite'.  
 
/imag/commande.asp, line 95


Message édité par drickou13 le 30-11-2003 à 23:11:40
Reply

Marsh Posté le 30-11-2003 à 23:21:41    

ben.. la colonne quantité n'existe pas ! je vois pas le soucis

Reply

Marsh Posté le 30-11-2003 à 23:24:15    

jusque la je suis daccord avec toi, mais je ce que je voudrais c'est pouvoir decrementer le stock disponible avec la variable quantite, comment je peux faire ?
si tu as ue idee je suis preneur.
merci de m'aider

Reply

Marsh Posté le 30-11-2003 à 23:33:24    

il faut pas mettre quantité en dur dans la chaine...  
 
sql = "UPDATE article " _
         & "SET    stock_dispo= stock_dispo-" + quantite +" _
  & "WHERE  id_article=" & id_article

Reply

Marsh Posté le 30-11-2003 à 23:33:49    

affiche ta requête, tu verras tout de suite ce qui ne vas pas

Reply

Marsh Posté le 30-11-2003 à 23:34:38    

ok je vais le faire  tout de suite merci
 

Reply

Marsh Posté le 01-12-2003 à 00:01:31    


 
 ' recup du stock_dispo
    Set rstStock = Server.CreateObject("ADODB.Recordset" )
    sql = "SELECT stock_dispo " _
        & "FROM   article  " _
        & "WHERE  id_article=" & id_article
    rstStock.Open sql,objConn
    stock_dispo    = rstStock("stock_dispo" )  
 
    rstStock.Close
 
    ' on referme la base  
    objConn.close
    Set objConn=Nothing  
    response.write(stock_dispo)
    new_dispo=stock_dispo-quantite
 
    response.write(quantite)
    response.write(new_dispo)
    ' on décrémente le stock dans la table ARTICLE
        sql = "UPDATE article " _
          & "SET    stock_dispo="new_dispo "_
   & "WHERE  id_article=" & id_article
 
 
      response.write(sql)
      objConn.Execute(sql)
     ' on referme la base  
     objConn.close
     Set objConn=Nothing  
 
Il me prends bien les bonnes valeurs mais simplement au resulta de la requete j'obtiens ca :  
 
Erreur de compilation Microsoft VBScript error '800a0401'  
 
Fin d'instruction attendue  
 
/imag/commande.asp, line 100  
 
& "SET    stock_dispo="new_dispo "_
-----------------------^

Reply

Marsh Posté le 01-12-2003 à 03:02:14    

ok c'est bon j'ai fini par trouver
merci par contre je vais certainement revenir pour d'autres question


Message édité par drickou13 le 01-12-2003 à 03:02:24
Reply

Marsh Posté le 01-12-2003 à 03:02:14   

Reply

Marsh Posté le 01-12-2003 à 08:33:58    

JagStang a écrit :

il faut pas mettre quantité en dur dans la chaine...  
sql = "UPDATE article " _
         & "SET    stock_dispo= stock_dispo-" + quantite +" _
  & "WHERE  id_article=" & id_article


juste pour info, c'est pas "+" mais "&" pour concaténer les chaînes avec des variables (ou d'autres chaines) :hello:

Reply

Marsh Posté le 01-12-2003 à 10:36:28    

merci. je suis plutôt C# ces temps... :)

Reply

Sujets relatifs:

Leave a Replay

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