[asp]Supprimer plusieurs lignesd'une bdd choisi par checkbox

Signaler
Messages postés
2
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
24 juin 2003
-
Messages postés
2
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
24 juin 2003
-
Salut
Voila j'ai afficher dans un tableau le contenu d'une table et a droite de chaque ligne , j'y est mis une case a coché (checkbox) ayant pour valeur le CodeProduit (du produit decrit dans la ligne) toutes ses checkbox ont pour nom "sup_prod"
Ce tableau est a l'interieur d'une formulaire et je renvoie l'action de ce formulaire sur une page asp qui va se chargé de supprimer dans la base de donnée toutes toutes les lignes coché
Seulement voila le prob(sans doute simple mais pas pour moi):
g juste fait un test avec cette requete dans ma page asp apelé apres le submit et j'y est mis ça:

<%

req="select * from Produits where CodeProd='"&request.form("sup_prod")&"'

set rs=cnx.execute(req)

while not rs.eof
response.write rs(2) 'affichage du troisieme champ
wend

rs.close
%>




et bien sur , rien ne s'affiche sur la page puisque mon request.form("sup_prod") contient plusieur valeur ( qd je fais un response.write(request.form("sup_prod")), voila ce que ça ecrit :

014 ,015 ,016

ce qui correspond au CodeProduit des produit que g coché dans mon formulaire
donc si quelqu'un pourrais m'aider , j'aimerais juste savoir comment faire pour supprimer
plusieur ligne a partir d'un tel formulaire (checkbox)(un peu comme qd on supprime plusieur email d'un coup dans notre boite de reception hotmail )

merci

2 réponses

Messages postés
1251
Date d'inscription
mercredi 7 août 2002
Statut
Modérateur
Dernière intervention
10 avril 2013

place ta liste de produits dans une variable

test = request.form("sup_prod")

place chaque valeur entre double quotte afin d'obtenir "014" ,"015" ,"016"

et remplace = par IN comme ci-dessous

<%

req="select * from Produits where CodeProd IN (" & test & ")"

set rs=cnx.execute(req)

while not rs.eof
response.write rs(2) 'affichage du troisieme champ
wend

rs.close
%>

Nickadele
Messages postés
2
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
24 juin 2003

c bon g resolu mon probleme:
voici le code si ça peut vous intressez:


<!-- #include file="../connexion.asp" -->

<% 
dim z 'nombre de case coché

z= request.form("prod_supp").count 'denombrement des case coché dans le formulaire

'on test si au moins une case a été coché 

if  z  then 'la on est si z<>0

 dim i 
 for i=1 to z 

' on récupère la valeur cochée dans la variable "val" pour s'en servir dans la requete

val=request.form("prod_supp")(i)

req=" select *  from Produits where CodeProd= "&val&"  "

 set rs=cnx.execute(req)
 
 response.write rs(2)&"
"

 next
 
 
else response.write "<center>Aucune case n'est cochée!!"

end if

 
 %>

 
 <!-- #include file="../deconnexion.asp" -->