Un petit probleme pour la suppression!PHP

Jeremy -  
a70m Messages postés 2763 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je vous expose mon problème qui est le suivant :
Ma requète supprimer marche tres bien, le souci c'est qu'il faut que je clique 2 fois sur "Supprimer". Je m'explique, depuis que j'ai inséré un code pour avoir une demande de confirmation, il faut que je clique une 1ere fois sur supprimer ensuite sur "Ok" (la rien ne se passe juste un semblant d'actualisation) donc je reclique une seconde fois sur "supprimer" et une seconde fois sur "Ok" et la sa fonctionne. Donc j'aimerai que ma suppression se valide au 1er clique!
Voilà mon code :

if (isset($_GET['n'])) // Si on demande de supprimer une fsq
{
// Alors on supprime la fsq correspondante
// On protège la variable "fsq_id" pour éviter une faille SQL
$_GET['n'] = addslashes($_GET['n']);
mysql_query('DELETE FROM fsq WHERE fsq_id=\'' . $_GET['n'] . '\'');

}
echo " <table >
<tr>
<td colspan='4'><span style='font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#1A8ACC; font-weight:bold'>$titrecentre</span> </td>
</tr>
<tr>

<td> </td>
</tr>
<tr >
<td> </td>
<td class='entete'>Fiche N°</td>
<td class='entete'>Date échéance</td>
<td class='entete'>Origine</td>
<td class='entete'>Pilote</td>
<td class='entete'>reponsable PA</td>
<td></td>
</tr> ";
while ($row = mysql_fetch_assoc($result) )
{
//print_r($row);
echo "<form name='fsq' action='".$action."' method='get' enctype='multipart/form-data' >";
echo"<tr align='left'>";
echo "<td><input type='hidden' name = 'ed_id' value ='".$row['fsq_id']."' /> <input type='hidden' name = 'centre' value ='".$centre."' /><input type='hidden' name = 'chemin' value ='".$chemin."' /><input type='hidden' name = 'titrepage' value ='".$titrepage." N° ".$row['fsq_id']."' /></td>";
echo "<td class='data'>".$row['fsq_id']."</td>";

echo "<td class='data'>".$row['fsq_date_dd']."</td>";
//echo "<td class='data'>".$row['fsq_nom']."</td>";

echo "<td class='data'>".$row['fsq_origine']."</td>";

echo "<td class='data'>".$row['fsq_pilote']."</td>";
if ($row['fsq_date_fin_prev'] == '0000-00-00' ) {echo "<td class='data'> </td>"; } else {echo "<td class='data'>".$row['fsq_date_fin_prev']."</td>"; }
echo "<td class='data'>".$row['fsq_resp_meo']."</td>";
echo "<td class='data'>".$row['fsq_date_fin_eval']."</td>";
//if ($row['fsq_date_fin_eval'] == '0000-00-00' ) {echo "<td class='data'> </td>"; } else {echo "<td class='data'>".$row['fsq_date_fin_eval']."</td>"; }
echo "<td style='padding-left:6px'><input type='image' src='images/folder_explore.jpg' name='Visualiser' /></td>
</form> ";

?>
<td><a href="AccueilPilote.php?centre=include/res_filtre_multi.php&n=<?php echo $row['fsq_id'] ; ?>" onclick="return(confirm('Etes-vous sûr de vouloir supprimer cette fiche?'));">Supprimer</a>
<?php
}
echo "</table>"; }
else
{
echo "
<table><tr><td style='padding:30px'><span style='font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#1A8ACC; font-weight:bold'> Actuellement, aucune fiche ne correspond à ce critère</span>
</td></tr></table>
";
}
?>


En espérant que vous allez pouvoir résoudre mon problème! Merci d'avance.. Jérémy
A voir également:

4 réponses

a70m Messages postés 2763 Date d'inscription   Statut Contributeur Dernière intervention   217
 
Salut,

Fait plutôt un lien Supprimer du genre :

<a href="tapage.php?supprimer_id<?php echo $row['fsq_id'] ;?>=1" onClick="confirm(êtes-vous sûr de vouloir supprimer ?);"> Supprimer </a>


Et après tu fais :

if($ssupprimer_id<?php echo $row['fsq_id'] ;?> == 1) 
{ 
mysql_query('DELETE FROM fsq WHERE fsq_id=\'' . $_GET['n'] . '\'');  
}


Bon je l'ai fait vite fait parce que je n'ai pas trop de temps, mais dans l'idée c'est ça.

Cordialement
Si un jour, l'envie de travailler te prends, assied-toi et attends que ca passe ...
Les boulets, on ne les aime que dans les quotes ! Merci
0
Jeremy
 
Merci de ta réponse !
Mais hélàs je trouve une parse error que je n'arrive pas a rectifié...

<a href="AccueilPilote.php?centre=include/res_filtre_multi.php?supprimer_id<?php echo $row['fsq_id'] ;?>=1" onClick="confirm(êtes-vous sûr de vouloir supprimer ?);"> Supprimermer </a>

<?php
if($supprimer_id<?php echo $row['fsq_id'] ;?> == 1)
{
mysql_query('DELETE FROM fsq WHERE fsq_id=\'' . $_GET['supprimer_id'] . '\'');
}
0
Jeremy
 
J'ai essayé avec du code javascript et sa me fait la même chose... obliger de cliquer 2 fois pour supprimer la donné...

if (isset($_GET['n'])) // Si on demande de supprimer une fsq
{
// Alors on supprime la fsq correspondante
// On protège la variable "fsq_id" pour éviter une faille SQL
$_GET['n'] = addslashes($_GET['n']);
mysql_query('DELETE FROM fsq WHERE fsq_id=\'' . $_GET['n'] . '\'');

}
echo " <table >
<tr>
<td colspan='4'><span style='font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#1A8ACC; font-weight:bold'>$titrecentre</span> </td>
</tr>
<tr>

<td> </td>
</tr>
<tr >
<td> </td>
<td class='entete'>Fiche N°</td>
<td class='entete'>Date échéance</td>
<td class='entete'>Origine</td>
<td class='entete'>Pilote</td>
<td class='entete'>reponsable PA</td>
<td></td>
</tr> ";
while ($row = mysql_fetch_assoc($result) )
{
//print_r($row);
echo "<form name='fsq' action='".$action."' method='get' enctype='multipart/form-data' >";
echo"<tr align='left'>";
echo "<td><input type='hidden' name = 'ed_id' value ='".$row['fsq_id']."' /> <input type='hidden' name = 'centre' value ='".$centre."' /><input type='hidden' name = 'chemin' value ='".$chemin."' /><input type='hidden' name = 'titrepage' value ='".$titrepage." N° ".$row['fsq_id']."' /></td>";
echo "<td class='data'>".$row['fsq_id']."</td>";

echo "<td class='data'>".$row['fsq_date_dd']."</td>";
//echo "<td class='data'>".$row['fsq_nom']."</td>";

echo "<td class='data'>".$row['fsq_origine']."</td>";

echo "<td class='data'>".$row['fsq_pilote']."</td>";
if ($row['fsq_date_fin_prev'] == '0000-00-00' ) {echo "<td class='data'> </td>"; } else {echo "<td class='data'>".$row['fsq_date_fin_prev']."</td>"; }
echo "<td class='data'>".$row['fsq_resp_meo']."</td>";
echo "<td class='data'>".$row['fsq_date_fin_eval']."</td>";
//if ($row['fsq_date_fin_eval'] == '0000-00-00' ) {echo "<td class='data'> </td>"; } else {echo "<td class='data'>".$row['fsq_date_fin_eval']."</td>"; }
echo "<td style='padding-left:6px'><input type='image' src='images/folder_explore.jpg' name='Visualiser' /></td>
</form> ";

?>
CODE MODIFIE :
<td><input type="submit" value="Supprimer"onclick="if (window.confirm('Vous etes sur de ne pas faire une betise ?'))
{location.href='AccueilPilote.php?centre=include/res_filtre_multi.php&n=<?php echo $row['fsq_id'] ;?>';return true;} else {return false;}"></td>



Aidez moi !=P

Mercid'avance !!
0
a70m Messages postés 2763 Date d'inscription   Statut Contributeur Dernière intervention   217
 
Re,

Pour la parse error,

<a href="AccueilPilote.php?centre=include/res_filtre_multi.php?supprimer_id<?php echo $row['fsq_id'] ;?>=1" onClick="confirm(êtes-vous sûr de vouloir supprimer ?);"> Supprimermer </a>


Je ne connais pas le ?centre=include/res_filtre_multi.php

C'est vraiment primordial pour ton code ?



0