Javascript message de confimation avant suppr

Résolu
aman -  
 aman -
Bonjour,

j'ai réalisé mon code PHP pour supprimer un enregistrement mais j'ai un petit probleme le message de confirmation qui ne marche pas

8 réponses

  1. Profil bloqué
     
    Sans code ça va être compliqué...
    0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut,

    Tu peux utiliser la fonction confirm() en JS.
    Elle retourne true ou false (true si l'utilisateur clique sur "Ok").

    Exemple :
    <a href="/news/supprimer/5"
        onclick="return confirm('Êtes-vous certain ?');">
        Supprimer
    </a>

    La pensée mène le monde.
    0
  3. aman
     
    voila mon code mais ca marche pas car il execute la requette en tt les cas si j ai cliqué sur ok ou annuler

    <?php
    session_start();

    echo
    "<script>
    confirm('Voulez-vous vraiment supprimer')
    </script>";
    if(confirm){
    $connexion = mysql_connect('localhost','root','') or die ("Connexion au serveur impossible");
    mysql_select_db(BD,$connexion)or die ("la base non reconnue");

    if(isset($_GET['cne'])){
    extract($_GET);

    $sql="DELETE FROM eleve WHERE CNE ='$cne'";
    mysql_query($sql) or die('erreur sql'.mysql_error());
    print ("<script language = \"JavaScript\">");
    print ("location.href = 'Filtrage_eleve_univ -page.php';");
    print ("</script>"); }}

    ?>
    0
  4. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    <script> 
    confirm('Voulez-vous vraiment supprimer') 
    </script>
    Tu en fais quoi du résultat ?

    if(confirm){
    D'où vient confirm ?
    Tu ne peux pas mélanger les fonctions/variables entre JS et PHP !

    confirm() (en JS) doit être utilisé sur le lien, comme je l'ai montré.
    Au niveau du PHP, tu ne dois pas faire cette vérification : si le script est exécuté, c'est que la page a été demandée. Et si la page a été demandée, c'est que l'utilisateur a confirmé.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. aman
     
    Merci pour l'aide ^^ j'ai ajouté onclick dans mon lien et une fonction confirm mais
    comment je peux récupérer l'action faite par l'utilisateur c'est a dire ok ou annuler ??
    0
  7. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    C'est fait automatiquement.

    Tu as ceci :
    onclick="return confirm('Êtes-vous certain ?');"
    Si l'utilisateur clique sur "Ok", ça devient ceci :
    onclick="return true;"
    Donc la page est chargée.

    Sinon, ça devient ceci :
    onclick="return false;"
    Et là, la page n'est pas chargée
    0
  8. aman
     
    je me sens perdu meme je pense que le truc est simple

    j ai 2 pages une qui execute la requette de suppression et l autre une qui contient le lien supprimer

    echo'
    <a href="supr-eleve.php?cne='.$row[0].'" class="table_delete" onclick="return confirm("Êtes-vous certain ?");">supprimer</a>
    <a href="mod_eleve.php?cne='.$row[0].'" class="table_edit">modifier</a>

    ';
    ca doit m afficher le message de confirmation????????
    0
  9. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    onclick="return confirm("Êtes-vous certain ?");"
    Il y a un problème au niveau des guillemets.

    Voici ce que "le navigateur voit" :
    onclick=["return confirm("]Êtes-vous certain ?[");"]
    Les crochets délimitent les chaines de caractère.
    On voit clairement que le code est invalide.

    Donc mon exemple, j'ai utilisé les guillemets simples (apostrophes) :
    onclick="return confirm('Êtes-vous certain ?');"
    0
    1. aman
       
      salut j ai un probleme la meme avec les apostrophes
      voile message s erreur



      Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\wamp\www\interface\Filtrage_niv -page.php on line 140

      voila mon code la ligne 140 contient onclick:

      echo ' <td width="200">'.$res['nom_niv'].'</td>
      <td width="100">
      <a href="supr-niveau.php?code_niv='.$res[0].'" onclick="return confirm('Êtes-vous certain ?');" class="table_delete">supprimer</a>
      <a href="mod_niveau.php?code_niv='.$res[0].'" class="table_edit">modifier</a>


      </td>
      ' ;
      0
    2. Profil bloqué
       
      echo '<td width="200">'.$res['nom_niv'].'</td><td width="100">
      <a href="supr-niveau.php?code_niv='.$res[0].'" onclick="return confirm(\'Êtes-vous certain ?\');" class="table_delete">supprimer</a>
      <a href="mod_niveau.php?code_niv='.$res[0].'" class="table_edit">modifier</a></td>';
      0
    3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Perso j'évite d'afficher du HTML via PHP.
      Je préfère fermer les instructions de traitement (~ "balise") PHP puis faire un echo des variables seules.
      0
    4. Profil bloqué
       
      Aussi.
      0
    5. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Ou encore mieux, on sépare le code de présentation (HTML) du code de logique (PHP) grâce au pattern MVC.
      0