Partage
  • Partager sur Facebook
  • Partager sur Twitter

[jquery ]confirmation de suppression

aucune suppression effectuée

Sujet résolu
    6 mai 2010 à 18:57:14

    salut les zéros,
    suite a mon precedent sujet qui est tombé aux oubliettes, je relances celui ci avec, je l'esperes, un peu plus de succes.
    je souhaites installer une confirmation avant la suppretion d'une entrée php( dans un tableau) via un script jquery trouvé ici .
    j ai donc mis ceci dans mon header:

    <script type="text/javascript">
    			
    			function removeUser(id){
    				var txt = 'Are you sure you want to remove this user?<input type="hidden" id="userid" name="userid" value="'+ id +'" />';
    				
    				$.prompt(txt,{ 
    					buttons:{Delete:true, Cancel:false},
    					callback: function(v,m,f){
    						
    				if(v)
                                    {
    				var uid = f.userid;
    				//Here is where you would do an ajax post to remove the user
    				//also you might want to print out true/false from your .php
    				//file and verify it has been removed before removing from the 
    				//html.  if false dont remove, $promt() the error.
    							
    				//$.post('campagne_action.php?action=supprimer',{userid:f.userid},callback:function(data){
    				    //if(data == 'true')
                                         {
    				    $('#userid'+uid).hide('slow', function(){ $(this).remove(); });
    									
    				    //}else{ $.prompt('An Error Occured while removing this user');         
                                    }							
    				//});
    				}
    				else{}
    						
    				}
    				});
    			}
    			
    		</script>
    


    j ai ensuite mis dans la boucle de ma requete ceci:

    <div id="userid<?php echo $donnees['campagne_id'];?>" class="user">
    
    	<span class="controls">
    	       <a href="javascript:;" title="Delete User" class="deleteuser" onclick="removeUser(<?php echo
                   $donnees['campagne_id']; ?>);">Delete</a>
    	</span>
    
    </div>
    

    et ma page de traitement:
    switch($action)
            {
    		
    	    case "supprimer":
    		
    	    $campagne = $_POST['userid'];
    		
                mysql_query("DELETE from campagne WHERE campagne_id = '".$campagne."'");
    
                header("Location: index.php");
    
    	    break;
          }
    



    j ai recopié trait pour trait le code et je ne vois pas ce qui cloche.
    ligne 4 du javascript, j ai bien mon input avec le bon name qui est recupéré dans la page de traitement enfin bon je sèche completement alors ca serait sympat de m'aider a finaliser ce script qui n'est pas de moi.

    merci
    • Partager sur Facebook
    • Partager sur Twitter
      6 mai 2010 à 19:06:44

      T'as oublier de commenté les {} de ton if ligne 20.

      Soit tu décommentes le if, soit tu commentes les accolades.
      • Partager sur Facebook
      • Partager sur Twitter
        6 mai 2010 à 19:24:51

        voila c'est fait j'ai commenté la ligne mais ca ne change rien , je n'ai toujours rien qui se supprime dans la base de données.

        ps: merci de m'aider
        • Partager sur Facebook
        • Partager sur Twitter
          6 mai 2010 à 19:32:51

          ... ... Mais là le code Ajax est commenté... :euh:
          • Partager sur Facebook
          • Partager sur Twitter
            6 mai 2010 à 19:38:16

            tu parles de ca ?:

            //Here is where you would do an ajax post to remove the user
            //also you might want to print out true/false from your .php
            //file and verify it has been removed before removing from the 
            //html.
            


            je pensais que la requête etait faite juste apres.

            je n'y connais pas grand chose en javascript et encore moins en ajax ...
            • Partager sur Facebook
            • Partager sur Twitter
              6 mai 2010 à 19:48:44

              Je parle de la ligne suivante >_<

              //$.post('campagne_action.php?action=supprimer',{userid:f.userid},callback:function(data){
              
              • Partager sur Facebook
              • Partager sur Twitter
                7 mai 2010 à 18:40:19

                j ai décommenté la ligne de la requete mais ca ne marche pas non plus ( la popup ne s'afiche pas du tout ).

                question: a quoi ca sert de commenter certaines lignes ?
                • Partager sur Facebook
                • Partager sur Twitter
                  7 mai 2010 à 18:45:45

                  Ben soit à les rendre actives soit inactives. Si l'instruction est commentée elle n'est pas éxécutée ici par le navigateur du client donc il ne se produit rien^^. Sinon après avoir lu dans ton 1er post, sans te faire injure il semble que le JS te passe complétement à coté des pompes, tu ne devrais pas commencer par l'apprendre avant de vouloir l'utiliser?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    7 mai 2010 à 18:49:06

                    j ai survolé les cours mais je ne trouves pas nécessaire de me lancer a fond dedans pour le moment surtout que je ne cherches que a faire marcher ce script. (encore trop de choses a apprendre en php avant de me lancer dans le js).
                    • Partager sur Facebook
                    • Partager sur Twitter
                      7 mai 2010 à 18:51:19

                      On peut voir en ligne comment tu as implémenté le code?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        7 mai 2010 à 18:54:23

                        ba je ne suis pas en ligne malheureusement mais si tu veux je peux uploader un dossier et te donner l'adresse
                        • Partager sur Facebook
                        • Partager sur Twitter
                          7 mai 2010 à 19:08:28

                          mp envoyé avec l'adresse en ligne

                          merci a toi
                          • Partager sur Facebook
                          • Partager sur Twitter
                            7 mai 2010 à 19:14:07

                            Il y a très peu de chance que cela change quoi que se soit dans la bdd, si tu as l'ajax de commenté :-° comme l'a dit Golmote un peu plus haut dans la page! En tout cas le mécanisme de suppression lui marche bien! Elle s'appelle comment ta page où tu gères la suppression des données?
                            • Partager sur Facebook
                            • Partager sur Twitter
                              7 mai 2010 à 19:16:51

                              campagne_action.php

                              dedans j ai un switch :

                              <?php  
                              		
                                      include'../../include/fichier/identifiants.php';
                              	mysql_connect($fr25hgp2l, $dlzeofjzo5ef, $f5e8z9ff4fe);
                                      mysql_select_db($fz5z8f4ze84fku);	
                              		
                              	$action = (isset($_POST['action'])) ? htmlspecialchars($_POST['action']) : null;
                              		
                              		
                                      switch($action)
                                      {
                              		
                              	case "supprimer":
                              		
                              	$campagne = $_POST['userid'];
                              		
                                      mysql_query("DELETE from campagne WHERE campagne_id = '".$campagne."'");
                              
                              	break
                              
                              • Partager sur Facebook
                              • Partager sur Twitter
                                7 mai 2010 à 19:18:05

                                <hs>
                                Question conne, pourquoi tu donnes des noms à la con à tes variables PHP pour le connect ?

                                Chiffrer les variables n'améliore pas la sécurité :)
                                </hs>
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  7 mai 2010 à 19:19:47

                                  lol je sais pas je me dis que peut etre qu'un gars va essayer de se connecter avec des noms communs a ma bdd ><

                                  edit: j ai tout décommenté pour voir et ca ne marche pas non plus (la popup ne se lance même pas)
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    7 mai 2010 à 19:22:09

                                    Citation : flowrian

                                    lol je sais pas je me dis que peut etre qu'un gars va essayer de se connecter avec des noms communs a ma bdd ><



                                    Ah là c'est sur il y a aucun risque :D , sinon tu as décommenté en ligne l'ajax?
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      7 mai 2010 à 19:23:26

                                      oui j'ai tout decommenté
                                      et je ne penses pas avoir d'erreur de parsage.
                                      par contre la popup ne se lance même plus
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        16 mai 2010 à 18:10:45

                                        resalut,

                                        j'ai reussi a faire marcher la bête ^^.
                                        j'ai cherché, testé, recgercger pendant plusieurs jours et maintenant ca marche bien, avec en prime un effet et une popup qui confirme la suppression.
                                        voici le code si ca peut aider certains :
                                        function supprimer (id)
                                        {
                                          $('#confirmation').dialog('option','buttons',{
                                            'Supprimer': function() {
                                              $(this).dialog('close');
                                        	    $('#tableau tr[id="commentaire' + id + '"] td').css
                                        		({  
                                                    'backgroundImage': 'none',  
                                                    'backgroundColor': 'white',  
                                                }); 
                                        		
                                                $('#tableau tr[id="commentaire' + id + '"] td').animate
                                        		({  
                                                    'backgroundColor': '#ff8888',  
                                                    'color': '#941010'  
                                                }, 1000); 
                                        		 
                                                $.get('campagne_action.php?action=supprimer', 
                                        		{  
                                                    idsup:id 
                                                }, 
                                        		
                                        		function(data)
                                        		{    
                                                if (data) 
                                        		{  
                                        		    $(function() 
                                        		    {
                                        		    $("#dialog").dialog("destroy");
                                        	        $("#suppression-effectuee").dialog
                                        		    ({
                                        			    modal: false,
                                        			    width: 500,
                                        			    hide: 'blind',
                                        			    buttons: 
                                        			    {
                                        				     Ok: function() 
                                        				    {
                                        				        $(this).dialog('close');
                                        				    }
                                        			    }
                                        		    });
                                        	        });
                                        		
                                                    $('#tableau tr[id="commentaire' + id + '"] td').fadeTo("slow", 0, function()
                                        			{  
                                                        $(this).hide();  
                                                    });  
                                                } 
                                        		else
                                        		{  
                                                    alert('Problème de connexion à la base de donnée');  
                                                }  
                                           
                                                }); 
                                        	},
                                            'Annuler': function() {
                                              $(this).dialog('close');
                                            }
                                          });
                                        	$('#confirmation').dialog('open');
                                        	return false;
                                        }
                                        
                                        $(document).ready(function(){
                                        	$('#confirmation').dialog({
                                        		autoOpen: false,
                                        		bgiframe: true,
                                        		resizable: true,
                                        		modal: false,
                                        		width: 500,
                                        		show : 'blind'
                                        		
                                        	});
                                        });
                                        


                                        merci a ceux qui m'ont aidés avec leurs remarques constructives
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        [jquery ]confirmation de suppression

                                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                        • Editeur
                                        • Markdown