Pb formulaire dynamique plusieurs submit

Résolu/Fermé
pixelrulez - 28 avril 2008 à 11:49
 pixelrulez - 28 avril 2008 à 15:06
Bonjour,
Voici mon problème, je réalise une page avec un menu déroulant dynamique dont voici le code :

extrait modif_news.php

<div>
<form action="redirect.php" method="post">
<select name="select_news" >
<?php
while($data = mysql_fetch_array($resultat))
{ $titre=$data['titre_fr'];
?>
<option value="titre"><?php echo "$titre" ?></option>
<?php
} //fin de la boucle while
?>
</select>

<p><br />
<input type="submit" name="edit" value="Modifier"/> 
<input type="submit" name="edit" value="Supprimer"/>
</p><br />
</form>
</div>

Jusqu'ici tout va bien mais dans ma 2eme page redirect.php que voici :

<?php
$recup_titre=$_GET['select_news'];
switch($_POST['edit'])
{
case 'Modifier':
header("location: update_news.php");
break;
case 'Supprimer':
header("location: suppression_news.php");
break;
}
?>

Je n'arrive pas a récupérer la valeur du champ que j'ai sélectionné dans mon formulaire dynamique et donc je n'arrive pas non plus à récupérer la valeur dans mes pages update_news et suppression_news.
Si quelqu'un a un solution à suggérer je lui en serait très reconnaissant même si cela implique de ne pas utiliser la page redirect.php.

Merci de vos réponses.

5 réponses

Utilisateur anonyme
28 avril 2008 à 13:49
Tu n'arrive pas à récupéré sur update_news.php et suppression_news.php la valeur de select_news sur la page modif_news.php, c'est bien ça ?
1
Utilisateur anonyme
28 avril 2008 à 12:04
Tu pourait faire comme ça :

Page modif_news.php :

<html>
<head>
<script>
function valide(supporedit)
{
document.formulaireenvoi.edit.value = supporedit;
document.formulaireenvoi.submit();
}
</script>
</head>
<body>
<form action="redirect.php" method="post" name="formulaireenvoi"> 
<select name="select_news" > 
<?php 
while($data = mysql_fetch_array($resultat)) 
{ $titre=$data['titre_fr']; 
?> 
<option value="$titre"><?php echo "$titre" ?></option> 
<?php 
} //fin de la boucle while 
?> 
</select> 

<p><br /> 
<input type="hidden" name="edit" value=""

<input type="button" value="Modifier" Onclick="valide('Modifier');"/>  
<input type="button" value="Supprimer" Onclick="valide('Supprimer');"/> 
</p><br /> 
</form>
</form>
</body>
</html>

0
Merci pour ta réponse romain mais cela ne résout pas mon problème car mon formulaire fonctionne sans javascript et j'arrive a afficher dans le menu déroulant les champs de ma bdd seulement je n'arrive pas à récupérer la valeur du champ sélectionnè dans mes autres pages pour effectuer le traitement de modification et de suppression. Je me suis suis peut être mal exprimé et c'est vrai que mon titre de sujet n'est peut être pas le mieux adapté au problème ....
0
oui voila il me faudrait recupérer la valeur du champ de select_news pour pouvoir effectuer l'update ou la suppression de ce champ mais avec la redirection (même sans d'ailleurs) je n'arrive pas a récupérer cette valeur je suppose qu'on doit pouvoir faire ca avec la methode GET mais je n'y arrive pas.
Merci de m'aider
0
Utilisateur anonyme
28 avril 2008 à 14:27
Très bien !

Sur redirect.php :

<?php 
switch($_POST['edit']) 
{ 
case 'Modifier': 
header("location: update_news.php?titre=". $_POST['select_news']); 
break; 
case 'Supprimer': 
header("location: suppression_news.php?titre=". $_POST['select_news']); 
break; 
} 
?>


Et sur les pages update_news.php et suppression_news.php, la valeur de select_news est : $_GET['select_news']
0

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

Posez votre question
Merci de ton aide encore :)
Mais un problème subsiste ....
En effet, je pense que la façon de procéder est la bonne pour la page redirect.php cependant il me renvoit comme valeur de titre dans l'url ceci : http://localhost/.../update_news.php?titre=$titre

Je suppose que l'erreur vient de cette ligne du formulaire :

<option value="$titre"><?php echo "$titre" ?></option>

dans la partie value.

J'ai essayé plusieurs syntaxe pour value (value=$titre , value =".$titre." value="$titre" ) et j'ai essayé avec le formulaire utilisant javascript (qui fonctionne ) pour cela me renvoi toujours le nom de la variable et non pas la valeur de celle-ci.
0
oupsssss
Juste aprés avoir posté j'ai pensé a une autre possibilité qui est :

<option value="<?php echo "$titre" ?>"><?php echo "$titre" ?></option>

et cela fonctionne !!!
Je peux donc récupérer mes valeurs dans mes pages suppression_news et update_news !

Merci beaucoup pour ta précieuse aide ;)

et bonne aprem !
0