Page 1 sur 1

Delete PHP sur même page que formulaire

Posté : 12 août 2013, 18:09
par Noobie
Bonjour,
Je viens vous demander de l'aide.

J'essaye d'effectuer une simple suppression. Je voudrais effectuer cela sur la même pas si possible.
<html>
<head>
    <script language="javascript">
      function confirme( identifiant )
      {
        var confirmation = confirm( "Voulez vous vraiment supprimer cet enregistrement ?" ) ;
	if( confirmation )
	{
	  document.location.href = "commentaires.php?idPersonne="+identifiant ;
	}
      }

    </script>
</head>

<body>

<?php	

if (isset($_POST['supprimer']) AND isset($_POST['supprimer'])) {

$id  = $_GET["idPersonne"] ;
$req = "DELETE 
            FROM commentaires
			WHERE idc = ".$id ;
			
$result  = mysql_query($req) or die($req."<br />\n".mysql_error());

  if($result)
  { echo("ok") ; }

  else{ echo("non") ;}
}
?>

<?php echo"<a name='supprimer' href=\"#\" onClick=\"confirme('".$Mon_Resultat['Id_Commentaires']."')\" > 

</body>
</html>
Si vous pourriez m'éclairer un peu :D
Merci

Re: Delete PHP sur même page que formulaire

Posté : 13 août 2013, 16:43
par AB
Un href ne peut envoyer que des variables GET donc inutile d'essayer de récupérer des variables POST.
Pour avoir des variables POST il faudrait faire un petit formulaire ce qui serait mieux sécurisé.

Enfin si tu tiens à faire un simple lien plutôt qu'un formulaire (formulaire recommandé) tu peux faire comme ceci :
<?php

$Mon_Resultat['Id_Commentaires'] = 1;


if (isset($_GET['supprimer'])) 
{
	echo "php get supprimer = ".$_GET['supprimer'];
}
?>

<html>
<head>
    <script language="javascript">
      function confirme( identifiant )
      {
        var confirmation = confirm( "Voulez vous vraiment supprimer cet enregistrement '"+identifiant+"' ?" ) ;
        if( confirmation )
        {
          	return true;
        }
	else
	{
		return false;
	}
      }

    </script>
</head>

<body>

<a href="?supprimer=<?=$Mon_Resultat['Id_Commentaires']?>" onclick="return (confirme(<?=$Mon_Resultat['Id_Commentaires']?>));" >supprimer l'enregistrement</a>

</body>
</html>