Bonjour, j'envoie ce message car je me trouve face à un problème.
J'ai un formulaire dans lequel il y a une combobox et deux bouton submit (il s'agit de compte client par exemple qui sont, grâce a une base de donnée, classé comme inactif. Le première bouton supprime le compte définitivement et le second le réactive.
Jusque la pas de soucis, ça fonctionne. Cependant, et c'est la que ça coince je souhaiterai demander une confirmation (en JS donc) pour savoir si l'utilisateur est sur de ce qu'il veut faire.
Voila ce que j'ai :
page d'index
Et voila le code que ça exécute :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 echo'<td>'; echo'<FORM action="/php/UserDelete_Restor.php" method="POST">'; echo'<SELECT name="machine" size="1" style="margin-top: 14px;">'; echo '<option selected="seleted"> ---- Choisissez le PC ---- </option>'; while($row = mysql_fetch_array($result)) { echo '<OPTION value='.$row["machine"].'>'.$row['societe'].' - '.$row["machine"];} echo'</SELECT>'; echo '</td>'; echo'<td>'; echo'<input value="Effacer" type="submit" name="delete" onclick="if (confirm(\'Êtes vous certain de vouloir supprimer cette machine ?\')) this.form.submit()"> <input value="Restaurer" type="submit" name="resto" onclick="if (confirm(\'Êtes vous certain de vouloir restaurer cette machine ?\')) this.form.submit()">'; echo'</td>'; echo'</FORM>';
Quand les bouton sont de type button les variable en POST ne sont pas envoyées, donc impossible d’exécuter le script et quand ils de type submit, les variables sont bien envoyées cependant même quand je fais annulé dans la demande de confirmation, ceci m’exécute quand même le script.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?php include('../config/sqlconf.inc.php'); if (isset($_POST['machine'])) { $machine = $_POST['machine']; } //Execution de la restauration-------------------------------------------------- if (isset ($_POST['resto'])){ //modification de la DB } //Execution de la suppression--------------------------------------------------- if (isset ($_POST['delete'])){ //modification de la DB et suppression des dossiers clients } ?>
J'ai essayé d'utiliser onsubmit mais ceci n'a rien changer (peut être l'ai je mal utilisé)
j'ai également essayé de faire cette vérification dans le script exécuté (ce qui est surement plus logique d’ailleurs), mais ceci mélangeait sérieusement le php et le JS, je finissais par ne plus m'y retrouver.
Je ne sis pas spécialement d'un bon niveau en php (enfin jusque la j'arrive a faire ce que je veux quand même) mais j'ai vraiment du mal avec le JS. Ce n'est probablement pas grand chose, mais la je sèche, si quelqu'un a une idée je suis preneur. merci d'avance.
![]()
Partager