suppression d entrées via checkbox

velipro
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 14
Inscription: 1 Aoû 2009

suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 17:32

salut,
je souhaites faire une suppréssion dans la bdd de certains champs via une checkbox.
l'envoi par $_POST se fait bien car l'echo fonctionne et m'affiche les id que je veux supprimer , mais par contre rien ne s enleve de la bdd.
Ca fait deux jours que je suis sur ce probleme et pas moyen de trouver une solution , c est pour ca que je me tourne vers vous afin que je puisse comprendre ou est l erreur.
voici la page du while qui affiche les données sous forme de tableau:
Code: Tout sélectionner
<?php
include("include/identifiants.php");
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);



$requete2 = mysql_query('SELECT * FROM prospect
            WHERE
            prospect_membre_id = '.$_SESSION['id'].'

            ORDER BY prospect_nom DESC') or die(mysql_error());


?>      <br /><br /><br />      
<form name="form_mailing_list" action="do_on_mailing_list.php" method="post">


<table id="gradient-style" class="paginated" >
    <thead>
       <tr>
            <th></th>
            <th scope="col"><span class="nostyle_bold">Nom</span></th>
            <th scope="col"><span class="nostyle_bold">E-mail</span></th>
            <th scope="col"><span class="nostyle_bold">Date</span></th>
         <th scope="col"><span class="nostyle_bold">status</span></th>
        </tr>
    </thead>
   <tbody>
<?php
while ($donnees = mysql_fetch_array($requete2))
{
?>
       <tr>
            <td><input type="checkbox" name="supp[]" value="<?php echo $donnees['prospect_id']; ?>" class="noborder"></td>
            <td><?php echo $donnees['prospect_nom']; ?></td>
            <td><?php echo $donnees['prospect_email']; ?></td>       
            <td><?php echo $donnees['prospect_inscription']; ?></td>
       <td><?php if($donnees['prospect_status'] == 0) echo '<span style="color:red">Inactif</span>'; else echo '<span style="color:green">Actif</span>'; ?></td>
            
<?php
}
?>
    </tbody>
</table>
<br />
<center><input type="submit" value="supprimer les prospects sélectionnés" /><br />
</form>


et la page de traitement :
Code: Tout sélectionner
<?php
session_start();

include("include/identifiants.php");
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);

$in = '(' . implode(', ', array_map('intval', $_POST['supp'])) . ')';
      mysql_query ('DELETE FROM prospect WHERE prospect_id  = "'.$in.'"') or die(mysql_error());
      
echo $in;


?>


a savoir que tout passe bien mais les données ne disparaissent pas


merci de m aider


legarspol
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 23
Inscription: 21 Déc 2006

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 17:41

J'ai du faire un truc dans le genre.
ce que je faisais c'est que je desinscrivait tout les choix dans la BDD
puis je réinscrivais ceux qui n'était pas coché.
Compris ?

velipro
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 14
Inscription: 1 Aoû 2009

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 17:45

oui oui compris mais la le soucis c est que c est pour effacer seulement les entrées pour un membre dans une base de données commune qui compte plus de 24 000 entrées donc ca va pas être possible


legarspol
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 23
Inscription: 21 Déc 2006

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 17:54

OK je laisse répondre les autres ^^
et j'utiliserais la méthode qu'il t'offrirons.
par contre si tu as une solution a mon problème...
Je suis preneur et planté en ce moment. :lol:


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8579
Inscription: 23 Nov 2005

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 19:09

Tu as essayé en faisant une echo de l'ordre sql et de l'exécuter via phpmyadmin ?

velipro
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 14
Inscription: 1 Aoû 2009

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 19:26

c'est a dire ?

je fais un echo oui mais pour vérifier que les données passent bien par le post et ca c est ok avec lui:
Code: Tout sélectionner
echo $in;


si je selectionne 3 entrées, je vais avoir
(25902, 25901, 25898)

qui va s afficher dans la page de traitement
sinon je vois pas ce que tu veux dire

Moof
WRInaute discret
WRInaute discret
 
Messages: 206
Inscription: 22 Mar 2003

Re: suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 19:27

Remplace
Code: Tout sélectionner
'DELETE FROM prospect WHERE prospect_id  = "'.$in.'"'

par
Code: Tout sélectionner
'DELETE FROM prospect WHERE prospect_id  IN "'.$in.'"'

velipro
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 14
Inscription: 1 Aoû 2009

Re: [resolu]suppression d entrées via checkbox

Message le Lun Aoû 24, 2009 19:30

erreur sql
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"(25905, 25902, 25901, 25898, 25894)"' at line 1


edit :
j ai supprimé les double quote et ca marche

MERCI


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités