Pas de passage de variable PHP

Résolu/Fermé
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 - 22 févr. 2009 à 14:57
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 - 27 févr. 2009 à 16:18
Bonjour à tous,
j'ai des soucis pour passer une variable en PHP, voici mon pb:
j'ai une page avec des liens, lorsque je clique sur un lien j'appel une autre page "Suppr.php" en envoyant une variable $emplacement (celle-çi passe correctement)
c'est après que ça pose problème, voici un bout de code (c'est un message de confirmation pour supprimer):

echo"<center><FORM method=GET action='Suppr.php?case=".$emplacement."'>";
echo"<b>VALIDER LA SUPPRESSION DE : ".$emplacement."</b><br>";
echo"<input type='submit' value='SUPPRESSION' name='OK_MODIF'>";
echo"</center></form>";


if(isset($OK_MODIF))
{
//mon code où j'utilise la variable $case pour une suppression
}


La variable $emplacement fonctionne très bien, l'affichage est correcte mais la variable $case ne contient rien.
Quelqu'un a une idée?? moi j'ai fait des tests sans succès, j'ai même essayé de passer une valeur écrit en dur dans case mais toujours rien!
merci de votre aide!

13 réponses

InAme19 Messages postés 539 Date d'inscription samedi 13 septembre 2008 Statut Membre Dernière intervention 29 novembre 2012 62
22 févr. 2009 à 15:15
Tu te complique la vie,
le mieux je pense est de créer un bouton hidden et tu lui donnes comme valeur la variable $emplacement .
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
22 févr. 2009 à 15:29
un bouton hidden? connais pas!
t'as un bout de code a montré?
0
InAme19 Messages postés 539 Date d'inscription samedi 13 septembre 2008 Statut Membre Dernière intervention 29 novembre 2012 62
22 févr. 2009 à 15:33
<input type='hidden' value=' ta valeur ' name=' le nom '>

C'est un bouton qui sera invisible et tu lui met la valeur que tu souhaites. L'avantage c'est que c'est facilement récupérable (comme un bouton texte par exemple)

if (isset( ton bouton hidden) && !empty ( ton bouton hidden))
{
}
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
22 févr. 2009 à 20:33
je ne comprend pas à quoi ça sert un bouton invisible?!

moi je veux cliquer sur le bouton pour exécuter le code de suppression écrit dans même page

ce qui est bizarre dans mon problème c'est que quand je veux passer une valeur dans $case (même écrit en dur), celle-çi ne passe pas, $case ne contient rien!
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
22 févr. 2009 à 15:34
tu la recupere comment ta variable $emplacement ?

dans tons cas il faut que ce soit par get
dans ta page suppr.php il faut que tu mette ça : $emplacement=$_GET['case'];
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
22 févr. 2009 à 20:28
j'utilise bien la méthode GET et au début de ma page j'ai extract($_GET);

malheureusement je ne peux utiliser $emplacement=$_GET['case']; car $case ne contient aucune valeur, même en ecrivant une valeur en dur dans le code pour faire un test, $case ne contient toujours rien!
0

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

Posez votre question
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
25 févr. 2009 à 16:00
Il n'y a personne qui peut m'aider??

J'ai trouver une solution de rechange mais elle ne me plait pas beaucoup, mais au final ça fonctionne :

echo"<center><FORM>";
echo"<b>VALIDER LA SUPPRESSION DE : ".$emplacement."</b><br>";
echo"<input type='button' value='SUPPRESSION' onclick=\"location.href='Suppr.php?case=".$emplacement."'\">";
echo"</center></form>";


if(isset($case))
{
//mon code où j'utilise la variable $case pour une suppression
}


J'aimerais revenir à l'utilisation d'un boutton "submit", pour ça j'aurais besoin de votre aide!!!
merci
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
25 févr. 2009 à 17:53
Je continue mes test sans succès!!!
en voilà 1 qui me pose problème et pourtant qui n'est pas compliqué je pense, voici mon code :

fichier index.php:
<?php
extract($_GET);
$valeur='725';
echo"<form method=get action='lien.php?envoi=".$valeur."'>";
echo"valeur=".$valeur;
echo"<br><input type='submit' value='VALIDE'>";
echo"</form>";
?>


fichier lien.php:
<?php
extract($_GET);
echo"<br>affichage de envoi=".$envoi;
?>


Le problème est qu'il ne m'affiche pas la valeur de $envoi,
cela ne fonctionne toujours pas même si, dans le fichier index.php, j'écrit echo"<form method=get action='lien.php?envoi=725'>";

Quel est mon problème?? j'en n'est marre!!! :'(
SVP, aidez moi!!
0
sebonoide Messages postés 8 Date d'inscription jeudi 19 février 2009 Statut Membre Dernière intervention 25 février 2009
25 févr. 2009 à 18:13
si tu fais juste:

echo"<br>affichage de envoi=".$_GET['envoi'] ???
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
25 févr. 2009 à 19:57
nan ça ne marche toujours pas!
j'ai l'impression que mes variables ne passe pas lorsque je clique sur le bouton submit!
par contre avec un lien ça passe nikel!, mais je préfère un boutons!!
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
25 févr. 2009 à 20:59
????
pourqoui tu utilise extract, en plus ca te retourne un array..?
j'ai pas tout le code de ta page mais un exemple tu veut passer 725 en get fait comme ça
<?php
$valeur='725';
echo"<form method=get action='lien.php?envoi='".$valeur."' />
echo"valeur=".$valeur;
echo"<br><input type='submit' value='VALIDE'>";
echo"</form>";
?>

fichier lien.php:
<?php
$result=$_get['envoi'];
echo'<br>affichage de envoi='".$result."';
?>


maintenant si dans ta page index.php tu veut passer une variable precedemment issue d'un champ en get tu marqueras ça
$valeur=$_get['nom_de_ton_champ'];

et la si ça marche pas je veut bien etre transformé en crapaud.. lol !!
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
25 févr. 2009 à 22:35
Je crois que tu va devoir te transformer :D

le extract m'évite d'écrire "$result=$_get['envoi'];" avec toutes mes variable (ici pour l'exemple je n'en ai qu'une mais pour mon vrais code j'en ai plusieurs!)
ensuite ça ne me retourne pas de array! (je ne vois pas pourquoi ça le ferait !??)

J'ai testé ton code mais au final toujours pas de 725 en affichage!

pour info je viens de faire le test avec : "<form method=get action='lien.php?envoi=725'>"

ça marche pô!! :'(
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
26 févr. 2009 à 05:34
..??
ca y est je suis transformé.. mdr !!
extract te retourne tes variables dans un array et pour les afficher une boucle while suffit, c'est pour ca que je te parlais d'array.

je viens de remarquer un truc
form method=get essaye en mettant get entre " "
et tu utilise quoi comme version de php ?

@+
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
26 févr. 2009 à 10:08
message posté à 05:34, t'es malade, j'ai besoin de ton aide mais quand même !! :D
Bon, j'te rend ta forme original! lol

alors pour method='get' j'ai déjà essayé! et ça marche point!

PHP Version 5.2.5
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
26 févr. 2009 à 14:11
lol!!
t'inquiete pas pour l'heure je suis un leve tot, la prog c'est un dur métier .. lol !!!!
tu a rien changé sur ton serveur par hasard ?

entre ce code au debut de ta page pour voir ce que tu recupere comme variables

<?php
echo'valeurs request <br/>'.print_r($_REQUEST).'<br/>'; //recup des données  request
echo'<br/>***************** <br/>';
echo'valeurs post <br/>'.print_r($_POST);//recup des données  post
echo'<br/>***************** <br/>';
echo'<br/>valeurs get <br/>'.print_r($_GET);//recup des données  get
echo'<br/>***************** <br/>';
?>
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
26 févr. 2009 à 17:32
nan j'ai rien changé, j'ai formaté mon pc au début de semaine et j'ai réinstallé wamp, je n'ai fait aucune modif!

voici le résultat (collé dans lien.php) :

Array ( ) valeurs request
1

*****************
Array ( ) valeurs post
1
*****************
Array ( )
valeurs get
1
*****************

affichage de envoi=
0
iberne Messages postés 38 Date d'inscription dimanche 22 février 2009 Statut Membre Dernière intervention 4 mai 2014 10
27 févr. 2009 à 16:18
J'ai trouvé une solution :

fichier index.php :
<?php
$valeur='725';
echo"<form method=post action='lien.php'>";
echo"valeur=".$valeur;
echo"<input type='hidden' name='envoi' value='".$valeur."'>";
echo"<br><input type='submit' value='VALIDE'>";
echo"</form>";
?>


fichier lien.php :
<?php
$result=$_POST['envoi'];
echo"<br>affichage de envoi=".$result;
?>


YOUPI ça marche!!, j'espère que ça suffira pour ce que je veux faire!! :P
merci lewis34 pour ton aide!
je changerais en "Résolu" si ça fonctionne correctement!
0