[PHP] Rafraichissement de page

Fermé
sidarks Messages postés 15 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 17 novembre 2009 - 30 mars 2007 à 22:59
 ludox59 - 7 août 2009 à 01:01
Bonjour j'ai besoin de vos services pour un petit problème...

Dans un de mes scripts, j'ai une liste déroulante avec des élements qui proviennent d'une base SQL, et après sélection d'un élement et après avoir appuyer sur un bouton "supprimer", l'élement est censé etre supprimé de la liste...jusque la pas de problème....

le HIC c'est que pour que l'élement disparaisse de la liste, il faut rafraichir la page..je cherche donc un moyen pour que lorsqu'on appuie sur le bouton "supprimer", la page soit raffraichie pour que l'élement soit directement enlevé...

je vous remercie de votre aide
A voir également:

5 réponses

guy2mars Messages postés 204 Date d'inscription dimanche 18 février 2007 Statut Membre Dernière intervention 24 janvier 2013 71
30 mars 2007 à 23:52
lorsque je programmais, j ai eu ce probleme. ma solution a ete de creer une table avec un num auto. cette table nourrissait la liste de mon formulaire.
lorsque je cliqueais sur la valeur, je lancais in runsql qui deletait la ligne dans la table puis un simple maliste.requery suffisait
0
sidarks Messages postés 15 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 17 novembre 2009
31 mars 2007 à 08:23
merci de ton aide ici également^^ mais la pour le coup je vois vraiment pas ce dont tu parles, je ne connais pas ces commandes runsql et maliste.query...

voila mon code au cas ou :
<body >
<form action="" method="POST">
<table>
		<tr>
		<td width="173" align="center">Supprimer une heure </td>
        <td width="150">        <?
   require('../config2.php');

   echo '<select name="heure" id="heure>>'."\n";   
   echo '<option value=""><option>'."\n";
  

    $connect1=mysql_connect($serveur, $login, $mdp, TRUE) or die ("Impossible de se connecter à la base de données CBR");
   // sélection de la base     
   mysql_select_db($base2,$connect1)  or die('Erreur de selection '.mysql_error()); 

   $sql2 = 'SELECT heures FROM heures ORDER BY heures';
  
   // on envoie la requête  
   $req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());

   // on fait une boucle qui va faire un tour pour chaque enregistrement  
   while($data2 = mysql_fetch_assoc($req2))
    {
     // on affiche les informations de l'enregistrement en cours 
	  
     echo '<option value='.$data2['heures'].'> '.$data2['heures'].'';   
    echo '</option>';   
      }
	  
	  if(isset($_POST['heure'])){ // on v&eacute;rifie la pr&eacute;sence des variables de formulaire (si le formulaire a &eacute;t&eacute; envoy&eacute;)
	
		$heure = $_POST['heure'];
		mysql_query("DELETE FROM heures "."WHERE heures='$heure'");}
		 
	?>
		<td><input type="submit" value="Supprimer" />
		</tr>
		</table>
		</form>
0
Salut,
Je ne suis pas un expert en la matiere mais je crois que si tu colle ton if(isset ???) en debut de page (en tout cas apres ta connexion a la base) alors y aura plus de pb... Le truc c'est d'effectuer la modification dans la base avant d'effectuer le SELECT... Voila, j'espere que ca t'aura été utile...
0
Up
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
19 oct. 2008 à 21:27
salut,

il faut faire le traitement de la suppression avant d'interroger la base et d'afficher

<body >
<form action="" method="POST">
<table>
		<tr>
		<td width="173" align="center">Supprimer une heure </td>
        <td width="150">       
<?
   require('../config2.php');

   echo '<select name="heure" id="heure>'."\n";   
   echo '<option value=""><option>'."\n";
  

    $connect1=mysql_connect($serveur, $login, $mdp, TRUE) or die ("Impossible de se connecter à la base de données CBR");
   // sélection de la base     
   mysql_select_db($base2,$connect1)  or die('Erreur de selection '.mysql_error()); 
	//on fait le traitement eventuel avant l'affichage
	//si une demande de suppression a ete faite on suprime 
   if(isset($_POST['suprimer'])){ // on verifie que le bouton nomme suprimer a ete poste;)
	
		$heure = $_POST['heure'];
		mysql_query("DELETE FROM heures WHERE heures='".$heure."'");
	}
   
   //interrogation table  (si une demande de suppression a été faite avant on aura bien l'état la base à jour
   $sql2 = 'SELECT heures FROM heures ORDER BY heures';
   // NOTA  ce n'est pas une bonne idée d'avoir donné le meme nom à ta table et au champ heures ???  nomme ta table tabl_heures par exemple
  
   // on envoie la requête  
   $req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());

   // on fait une boucle qui va faire un tour pour chaque enregistrement  
   while($data2 = mysql_fetch_assoc($req2))
    {
     // on affiche les informations de l'enregistrement en cours 
	  
     echo '<option value='.$data2['heures'].'> '.$data2['heures'].'';   
    echo '</option>';   
      }
		 
	?>
		<td><input type="submit" name="suprimer" value="Supprimer" />
		<!-- mets un name au bouton -->
		</tr>
		</table>
		</form>
0
ludox59 > Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017
7 août 2009 à 01:01
Merci cela m'a bien aidé
0
J'ai le meme problème.
Si quelqu'un a une réponse je suis preneur ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cmoif Messages postés 19 Date d'inscription mercredi 15 octobre 2008 Statut Membre Dernière intervention 24 octobre 2008
19 oct. 2008 à 21:24
pour raffraichir ta page:

if(isset($_POST["supprimer']))
{
header("Location:tapage.php");
}



edit : la réponse d'Alain_42 semble plus propre qu'un header bien bourrin :p
0