Probléme PHP/JS : boite de dialogue

Résolu
Bonjour, j'ai un petit problème :
<script type="text/javascript" language="javascript">
  if (confirm("Tu es sur ?")) 
  {
    <?php
$valeur = "../compte/compteur";
$txt = ".txt";
$raz = $valeur.$_GET['id'].$txt;
$req = unlink($raz);
?>
  }
  else {
  }
</script>

Quand j'exécute ce script, que je mette oui ou non, le fichier va quand même être supprimer. Vous avez une idée pour que sa s'exécute uniquement si on clique sur oui ????

10 réponses

  1. oui mais moi avec le php, il va DIRECTEMENT supprimer le fichier sans cliqué donc du coup, je ne sais pas comment faire.
    1. Le javascript s'éxécute dans ton navigateur et le php sur le serveur, comment veux tu que le résultat de ta boite confirm modifie le comportement de php ??

      il faut que suivant true ou false de ta boite confirm tu appelles le script php ou pas sur le serveur
      1. Bizarre car ceci fonctionne:

         
        
        <html>
        	<head></head>
        	<body>
        	<script type="text/javascript" language="javascript">
          if (confirm("Tu es sur ?")) 
          {
        	alert("Oui");
          }
          else {
        	alert("Non");
          }
        </script>
        	</body>
        
        
        1. tout dépend comment est ta page dans laquelle tu as tes différents id a supprimer

          celle ou tu cliques pour lancer la suppression
          donne nous le code, on te proposera un complement pour comfirmation de suppr
          1. Voici mes codes. Ils sont sur 2 pages différentes : action, exécution
            <a href="supprimer.php?id=<?php echo $nombre_de_lignes; ?>">r.a.z</a>

            Et l'exécution :
            <?php
            if(preg_match("#^[0-9]+$#", $_GET['id']))
            {
              mysql_connect("", "", "");
              mysql_select_db("");
              $sql = "DELETE FROM ratings WHERE id='id".$_GET['id']."'";
              $req = mysql_query($sql);
              mysql_close();
              if($req == true) 
              {
                echo '<br /><br /><center>Suppression r&eacute;ussie !</center>';
              }
              else
              {
                echo '<br /><br /><center>Erreur lors de la suppression</center>';
               echo mysql_error();
              }
            }
            else
            {
            echo "erreur";
            }
            ?>


            Mais après l'exécution, je suis obligé de revenir a la page précédente alors qu'avec une boite de dialogue, pas besoin de changé de page. Du moins je pense.
            1. a partir du moment ou par le lien suppr tu appeles une page php sur le serveur tu vas forcement charger une nouvelle page que tu mettes une boite de demande de confirmation javascript ou pas

              pour une boite de cofirmation tu peux essayer:

              <script type="text/javascript">
              function confirmation_suppr(url){
              
              if(confirm("Etes vous sur de vouloir supprimer ?"){
              return url;
              
              }
              else {
              return false;
              }
              }
              </script>
              
              <a href="javascript: return confirmation_suppr('supprimer.php?id=<?php echo $nombre_de_lignes; ?>');">r.a.z</a>
              
          2. Je suis désolé, mais sa ne fonctionne pas. Je n'ai même pas la boite de dialogue qui s'affiche.
            1. Bon en voilà un bout qui fonctionne:

              <script type="text/javascript">
              function confirmation_suppr(url){
              	if(confirm("Etes vous sur de vouloir supprimer ?")){
              	location.href=url;
              	}
              }
              </script>
              
              <a href="javascript:confirmation_suppr('supprimer.php?id=<?php echo $nombre_de_lignes; ?>');">r.a.z</a>
              
              1. En effet, ce script fonctionne mais il renvoie quand même vers une autre page. Il fraudais que javascript fasse appelle au script qui se trouve sur la page suppression mais sans allé déçu.

                Comment faire ???
                1. si tu veux que ça appelle un script php sans recharger le page il faut passer par Javascript AJAX
                  fais des recherches sur G...

                  Ajax