[RESOLU] C'est possible d'avoir onclick="window.location.href=''" et onclick=return(confirm()); dans une même balise

Eléphanteau du PHP | 25 Messages

03 mars 2022, 19:47

Voici la portion de mon code:

Code : Tout sélectionner

<button class="btn_ad" onclick="window.location.href ='bloque.php?id = <php echo $id ?> ' "> bloquer </button> Je veux faire la boîte de confirmation onclick="return(confirm('etes-vous sur?'))";
mais je ne sais pas où ajouter dans la balise bouton. Merci d'avance

ynx
Mammouth du PHP | 586 Messages

03 mars 2022, 20:39

Non il n'est pas possible d'avoir plusieurs onclick sur une balise html.

Tu peux éventuellement regrouper le code js dans un seul attribut (voir une fonction si besoin de réutiliser ou d'ajouter d'autres traitements).
Si c'est juste pour confirmer un changement d'URL, il serait p-e plus simple d'utiliser un lien plutôt qu'un bouton (tu peux bien sûr utiliser le css pour donner au lien le style du bouton).
<button class="btn_ad" onclick="if (confirm('ok ?')) window.location.href='bloque.php?id=<php echo $id ?>'">Bloquer</button>
<!-- ou -->
<a href="bloque.php?id=<?php echo $id; ?>" class="btn_ad" onclick="return confirm('ok ?')">Bloquer</a>

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

04 mars 2022, 09:37

A noter que lorsqu'il s'agit d'actions sensibles, il est préférable de les faire en POST, plutôt qu'en GET.
Donc en l'occurence ni avec un lien ni un window.location() mais avec un formulaire que tu envoies (ou un appel Ajax)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 25 Messages

04 mars 2022, 12:23

Merci beaucoup ça marche 🙏🙏