Method post et name dans le formulaire

Fermé
Altair60 - 14 déc. 2008 à 16:00
 Altair60 - 14 déc. 2008 à 17:21
Bonjour,

j'ai un problème en php et je n'arrive pas a le résoudre tout seul j'espère que quelqu'un pourra m'aider.
Alors j'ai créé une fonction php et j'ai un formulaire dedans.

if(isset($_SESSION['login'])
{
echo"<td><form action='include/ajout_panier.php' method='POST'><input type='submit' name='$film' value='panier'></form></td>";
}

... et sur ma page ajout_panier.php , j'aimerais récupérer le name avec un POST du genre $_POST['$film'], mais lorsque je fais ca , et bien ça ne fonctionne pas :(

Merci de me une idée de comment je pourrais procédé pour palier a ce problème.
Cordialement,Altair60.

10 réponses

Utilisateur anonyme
14 déc. 2008 à 16:08
fais comme ceci :


if(isset($_SESSION['login'])
{
echo"<td><form action='include/ajout_panier.php' method='POST'><input type='submit' name='".$film."' value='panier'></form></td>";
} 


et tu récupere comme ça :
$_POST[$film]
0
mp5player Messages postés 49 Date d'inscription mercredi 10 décembre 2008 Statut Membre Dernière intervention 20 décembre 2008 48
14 déc. 2008 à 16:08
sur ta page ajout_panier.php
Comment la page sais quelle est la valeur de la variable a replacer dans $film ?
0
Et bien voila mon code en gros ...

function news()
{
echo "Voici la liste des nouveautés DVD du site</br>";

$req=DB::Sql("select image,Titre,Data_sortie,Acteurs,Resume from dvd where id_DVD>(select max(id_dvd-3) from dvd)");

while($liste=mysql_fetch_row($req))
{
echo "<table align='center' border='3px double black'><tr><td><img src='$liste[0]'><td>";
echo "<td><h3>".$liste[1]."</h3> Date de sortie:".$liste[2]." </br> Acteurs pricinpaux:";
echo "".$liste[3]."</br>Synopsis :</br>".$liste[4]."</td>";
if(isset($_SESSION['login']))
{
$film=$liste[1];
echo"<td><form action='include/ajout_panier.php' method='POST'><input type='submit' name='".$film."' value='panier'></form></td>";
}
echo "</tr></table>";
}
}
0
fais comme ceci :

if(isset($_SESSION['login'])
{
echo"<td><form action='include/ajout_panier.php' method='POST'><input type='submit' name='".$film."' value='panier'></form></td>";
}



et tu récupere comme ça :

$_POST[$film]


.... ca ne marche pas aparemment :(
0

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

Posez votre question
mp5player Messages postés 49 Date d'inscription mercredi 10 décembre 2008 Statut Membre Dernière intervention 20 décembre 2008 48
14 déc. 2008 à 16:37
Imagine que le nom du film soit "Spiderman"

Arrivé sur ton navigateur, ton code php suivant :
<form action='include/ajout_panier.php' method='POST'><input type='submit' name='".$film."' value='panier'></form>

sera devenu :
<form action='include/ajout_panier.php' method='POST'><input type='submit' name='spiderman' value='panier'></form>


Et donc sur la page ajout_panier.php
il faudrait qu'il y ai :
$_POST['spiderman'], or $film n'a aucune valeur sur cette page ....


0
Ah weah ...

et tu sais comment je pourrais faire pour corriger le tire.?? :S
0
mp5player Messages postés 49 Date d'inscription mercredi 10 décembre 2008 Statut Membre Dernière intervention 20 décembre 2008 48
14 déc. 2008 à 16:51
Mets le dans une session
0
JE crois que j'ai déja essayer ... mais ca a pas fonctionner ...
en fait je m'y suis peut étre mal pris.

Tu vois comment je pourrais faire avec les SESSIONS ???
0
mp5player Messages postés 49 Date d'inscription mercredi 10 décembre 2008 Statut Membre Dernière intervention 20 décembre 2008 48
14 déc. 2008 à 17:12
quand tu fait des tests avec des sessions, c'est chaud.
Il faut veiller à les effacer a chaque test, car sinon tu as l'impression que ca ne fonctionne pas alors qu'en fait ca marche.

Je ne suis pas tres bon en php mais essaye

$_SESSION['titre_film']=$liste[1];

echo"<td><form action='include/ajout_panier.php' method='POST'><input type='submit' name='".$_SESSION['titre_film']."' value='panier'></form></td>";

dans la premiere page

puis $_POST[$_SESSION['titre_film']] dans la deuxieme ....

Fait gaffe a la syntaxe, car mon domaine c'est plutôt l'ASP
0
Okay , je vais essayer ca et je te dirais quoi ... merci :)
0