$_POST[$nom]

php developper -  
 toto -
Bonjour,

J'aimerais bien trouver une solution a mon probleme.
<form>
<?php $nom = transfert.$rows['id_mag']; ?>
<input type="submit" name="<?php echo $nom;?>" value="Transférer">
</form>
if(isset($_POST[$nom]))
{}

mon probleme est que j'arrive pas a recuperer le nom de mon bouton submit
Aidez moi SVP

7 réponses

Marco la baraque Messages postés 1030 Statut Contributeur 329
 
Bonjour,
<?php $nom = 'transfert'.$rows['id_mag']; ?> peut-être ?

Cordialement,
0
php developper
 
Merci Marco...

mais ca ne fonctionne pas...
0
Marco la baraque Messages postés 1030 Statut Contributeur 329
 
Ok,
Ton attribut "name", il vaut quoi alors actuellement (avant l'ajout de quotes, et après l'ajout de quotes) ?
Et $row['id_mag'], ça vaut quoi ?

Cordialement,
0
toto
 
La méthode par défaut des formulaires est GET. Si tu veux récupérer le nom de ton bouton dans $_POST, il faut que tu précises dans la balise d'ouverture :
<FORM method="POST">
Mais ça ne marchera que si ta variable $nom a la même valeur au 1er appel de ta page (quand tu crées le formulaire) et au second (quand tu l'analyses) ce qui est probablement le cas.
0
php developper
 
En fait je vous ai presente juste une partie de mon code...
le $rows['id_mag'] est un identifiant recuperer de ma base...
ce pendant dans mon script j'ai pour chaque identifiant un bouton submit...
j'arrive pas a expliquer ce que je suis entrain de faire mais par exemple si je change le name="nom"
alors if(isset($_POST['nom'])) fonctionne mais la je recupere le dernier identifiant.
0

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

Posez votre question
toto
 
Je pense que le plus simple est de faire une boucle foreach sur $_POST
$nom="";
foreach ( $_POST as $cle => $valeur) {
if ($valeur=='Transférer') {
$nom=$cle;
break;
}
}

Mais c'est une très mauvaise idée d'utiliser des noms (de personnes ?) comme identifiants de formulaire : tu vas avoir toutes sortes de problèmes avec les caractères spéciaux , apostrophes et autres lettre accentuées.
0
php developper
 
$nom ne contient pas un nom de personne
je pense que vous m'avais mal compris....
j'ai un dans un seul <form></form> plusieurs formulaires pour chaque identifiant j'ai des champs texte et un bouton submit
donc une fois je change un formulaire je dois connaitre le nom de mon bouton submit pour faire le transfert des donnees...
c'est assez difficile d'expliquer
0
toto
 
C'est vrai que c'était un peu bête de ma part d'imaginer qu'un champ 'id_mag' contient un nom de personne.
Mais peu importe qu'il s'agisse d'un nom de personne ou pas. La boucle foreach te permet de retrouver le nom du bouton dans tous les cas, puisqu'elle fait défiler tous les champs transmis.
j'ai un dans un seul <form></form> plusieurs formulaires ça, ça n'est pas possible puisque par définition un formulaire commence au <form> et s'arrête au </form>.
0