Ajouter une confirmation avant un delete

Fermé
Anouchka2586 Messages postés 51 Date d'inscription vendredi 10 octobre 2014 Statut Membre Dernière intervention 20 mars 2022 - 17 avril 2018 à 15:42
Anouchka2586 Messages postés 51 Date d'inscription vendredi 10 octobre 2014 Statut Membre Dernière intervention 20 mars 2022 - 17 avril 2018 à 18:58
Bonjour

J'ai ce lien qui supprime une ligne de données dans ma bdd. J'aimerais rajouter une confirmation avant d'exécuter la requête et je ne vois pas vraiment où ajouter cette partie javascript.
Voici mon lien :
<a href="deleteFacture.php?id='.$re['id'].'">Suppr</a>


Dès qu'on clique sur ce lien, cette requête ci-dessous est exécutée:
$req = $base->prepare('DELETE FROM infosfacture WHERE id= :id');
$req->bindParam(':id', $_GET['id'], PDO::PARAM_INT);
// echo "<script type=\"text/javascript\">
// alert('Vous confirmez supprimer cette facture')
// </script>";
$req->execute();



J'ai écris cette fonction mais je ne vois pas comment l'utiliser à partir du lien :
function delete_confirm()
{
if(confirm("Voulez vous vraiment supprimer cette facture ?"))
{
alert('Supression effectuer');
location.href= 'deleteFacture.php';
}
else
{
alert('Suppression annulée');
location.href='listefactures.php';
}
}



Merci pour votre aide !
A voir également:

2 réponses

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié le 17 avril 2018 à 15:48
Bonjour,

Pour rester dans l'esprit du code que tu as écrit, je te suggère d'utiliser href="javascript:", auquel il faut également passer en paramètre l'id de l'élément à supprimer.
<a href="javascript:delete_confirm('.$re['id'].');">Suppr</a>


Et ta fonction delete_confirm :
function delete_confirm(id_facture)
{
    if(confirm("Voulez_vous vraiment supprimer cette facture ?"))
    {
        alert('Suppression effectuée');
        location.href= 'deleteFacture.php?id=' + id_facture;
    }
    else
    {
        alert('Suppression annulée');
    }
}


Xavier
0
Anouchka2586 Messages postés 51 Date d'inscription vendredi 10 octobre 2014 Statut Membre Dernière intervention 20 mars 2022 5
17 avril 2018 à 16:32
J'ai fait ça mais j'ai une erreur :
<a href="javascript:delete_confirm('.$re['id'].')">Suppr</a>


function delete_confirm($id_facture)
{
if(confirm("Voulez_vous vraiment supprimer cette facture ?"))
{
alert('Suppression effectuée');
location.href= 'deleteFacture.php?id='.$id_facture;
}
else
{
alert('Suppression annulée');
}
}

?>


Voici l'erreur : Parse error: syntax error, unexpected '=' in /homepages/0/d513201601/htdocs/Facturation_generale/listefactures.php on line 9

Ligne 9===> location.href= 'deleteFacture.php?id='.$id_facture;
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié le 17 avril 2018 à 18:42
Ah ah pardon, j'ai écrit un peu vite et ai mélangé le php et le js...
Ligne 4===> function delete_confirm(id_facture)
Ligne 9===> location.href= 'deleteFacture.php?id=' + id_facture;
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
17 avril 2018 à 18:43
Ah mais non ! Je l'avais bien écrite, c'est toi qui a modifié...
C'est une fonction Javascript, pas php !
0
Anouchka2586 Messages postés 51 Date d'inscription vendredi 10 octobre 2014 Statut Membre Dernière intervention 20 mars 2022 5
Modifié le 17 avril 2018 à 18:59
J'ai trouvé une solution plus courte:
<a href="deleteFacture.php?id=<?= $re['id'] ?>"
onclick="return confirm('Voulez-vous supprimer la facture n° <?php echo $re['num']; ?>');">
<FONT color="white">Suppr</FONT></a>
0