Annuler confirmation

Fermé
sfaya - Modifié par sfaya le 1/04/2013 à 18:02
sfaya Messages postés 4 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 12 avril 2013 - 2 avril 2013 à 11:51
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

ReDLoG Messages postés 243 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 28 octobre 2021 57
Modifié par ReDLoG le 1/04/2013 à 18:26
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
sfaya Messages postés 4 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 12 avril 2013
2 avril 2013 à 09:42
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
sfaya Messages postés 4 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 12 avril 2013
2 avril 2013 à 09:53
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
ReDLoG Messages postés 243 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 28 octobre 2021 57
2 avril 2013 à 10:29
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
sfaya Messages postés 4 Date d'inscription lundi 1 avril 2013 Statut Membre Dernière intervention 12 avril 2013
2 avril 2013 à 11:51
Je vous remercie ReDLoG
0