Annuler confirmation

sfaya -  
sfaya Messages postés 5 Statut Membre -
Bonjour,

je viens de créer une page qui permet de supprimer un élément de la base à partir d'une select menu ,
le problème c'est que meme si je clique sur annuler (de la fenêtre de confirmation ) l'élément s'est effacé
voilà mon essai:

<script langage="JavaScript">

function confirmation() {
var nom = document.getElementById('supprimer');
var namee = nom.options[ nom.selectedIndex].text;
var msg = "Etes-vous sur de vouloir supprimer "+namee+" ?";
if (confirm(msg))
location.reload(supprimer.php);

}
</script>
************************

<select name='supprimer' id="supprimer" >
<option>Selectionner</option>
<option value="supprimer"></option>
<?php

// je récupère ici l'élément à supprimer

echo '<option value=" '.$id.'">'.$name.'</option>';
}}
?>

<input type="submit" onclick="confirmation();" value="Supprimer"/>
</select>

*******************
dans le fichier supprimer.php j'ai :

if (isset($_POST['supprimer']))
{$element1=$_POST['supprimer'];
//conx à la base
$Query=mysql_query("delete from table where id='$element1'");

3 réponses

  1. ReDLoG Messages postés 393 Statut Membre 57
     
    Bonsoir,

    Déjà il faut modifier cette partie de ta fonction javascript :
    <script type="text/javascript" language="javascript"> 
    function confirmation() {
    	var nom = document.getElementById('supprimer'); 
    	var namee = nom.options[nom.selectedIndex].value;
    	var msg = "Etes-vous sur de vouloir supprimer "+namee+" ?";
    	if (confirm(msg)) 
    		location.href='supprimer.php';
    }
    </script>

    Et celle-ci également :
    <select name="supprimer" id="supprimer"> 
     <option value="">Sélectionner un élément à supprimer</option> 
    <?php 
      // je récupère ici l'élément à supprimer 
      echo '<option value="'.$id.'">'.$name.'</option>'; 
     } 
    } 
    ?> 
    </select> 
    <input type="submit" onclick="confirmation();" value="Supprimer" />
    
    if (isset($_POST['supprimer']) && !empty($_POST['supprimer'])) { 
     $element1=$_POST['supprimer']; 
     //Requête de suppression dans la table 'table' 
     $Query=mysql_query("DELETE FROM table WHERE id="'.$element1."'") or die(mysql_error()); 
    }

    Cdlt.
    Ne prenez pas la vie trop au sérieux; de toute façon, vous n'en sortirez pas vivant (°!°)
    0
  2. sfaya Messages postés 5 Statut Membre
     
    bonjour,

    même en faisant la modification que vous avez mentionnée, en cliquant sur annuler l'élément sélectionné s'est effacé de la base
    0
  3. sfaya Messages postés 5 Statut Membre
     
    J'ai corrigé le problème, en fait ma select était dans une form non adéquate
    Merci ReDLoG
    mais un autre problème est apparu, c'est qu'en supprimant l'élément souhaité je voudrais rester sur la même page et non pas se rediriger vers la page supprimer.php !!
    0
    1. ReDLoG Messages postés 393 Statut Membre 57
       
      Alors tu places ton code PHP dans la même page que ton formulaire et tu fais pointer le formulaire (attribut action="") sur la page qui le contient. Par exemple ta page contenant le formulaire s'appelle form.php alors :
      <form method="php" action="form.php">

      Et pour le code PHP comme il s'agit juste d'une requête de suppression tu le place avant le code HTML comme ceci :
      <?php
      // ton code PHP avec la requête
      ?><html>
      <head>
      <!--suite de ton code HTML, formulaire etc...-->
      </body>
      </html>

      Cdlt.
      0
    2. sfaya Messages postés 5 Statut Membre
       
      Je vous remercie ReDLoG
      0