Pb avec $_GET

Résolu
moon_00 Messages postés 2 Date d'inscription mercredi 12 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006 - 12 juil. 2006 à 16:14
moon_00 Messages postés 2 Date d'inscription mercredi 12 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006 - 13 juil. 2006 à 11:16
Bonjour,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>






 






La valeur de la variable $id, issue d'un $_GET, apparaît bien dans ma page .php au niveau de :






 







            j'ai <?php echo $id ?> ans






 






mais n'est a priori pas récupérable dans le bout de code entre les 2 accolades {}, après :






 







           

if (isset($_POST['Valider']) && $_POST['Valider'] == 'Valider')






 






Je ne peux donc pas insérer cette valeur dans ma base de données, ni la transférer par le header sur page.php.






 






Quelqu'un a-t-il une solution ? Pourriez-vous m'expliquer ce qu'il se passe.






 






Merci d'avance,






 






Moon_00




 







Ci-dessous le code en question : 







 






<?php





session_start();





$id = $_GET['id'];






 






if (isset($_POST['Valider']) && $_POST['Valider'] == 'Valider') {






            mysql_connect("toto", "titi", "tutu");






            mysql_select_db("base");






            $pseudo = $_SESSION['pseudo'];






            $sql = 'INSERT INTO table VALUES("", "' . $pseudo . '", "' . $id . '", "S");';






            mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error());






            mysql_close();






            header('Location: page.php?id='.$id.'');





}





?>





<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">





<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >





<head>






                        <title></title>






                        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />






                        <link rel="stylesheet" media="screen" type="text/css" title="" href="style/design.css"/>





</head>















<form method="post" action="valid_selection">






           







            j'ai <?php echo $id ?> ans






           







           





</form>















</html>

7 réponses

cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
12 juil. 2006 à 16:24
tu arrive dans cette page avec un GET donc dans ton formulaire tu as ton $id

par contre tu valide ton formulaire en POST !!

modifie ton form <form action ="mapage.php?id=$id" method="post">
3
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
12 juil. 2006 à 16:19
Hello
si ej comprends bien ton îd n'existe plus dans ton if..

pourrais tu faire un die ($sql) juste apres
$sql = 'INSERT INTO table VALUES("", "' . $pseudo . '", "' . $id . '", "S");';

et nous dire ce qui s'affiche ?

-------------------------------------

Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
0
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
12 juil. 2006 à 16:27
ben...l'id peut tres bien etre passé en $_GET et les données en $_POST....

-------------------------------------
Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
0
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
12 juil. 2006 à 16:38
sauf qu'ici quand le fomulaire le $id n'est pas renvoyé ...
0

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

Posez votre question
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
12 juil. 2006 à 16:42
mouarf ! j'avais pas vu le code du formulaire en dessous ! au temps pour moi ;)
oui effectivement donc, l'id n'est pas du tout passé dans le formulaire.

il faut donc soit utiliser la méthode de putch et recpere l'id par le $_GET
soit rajouter dans le formulaire un
echo '';
-------------------------------------

Les ordinateurs, plus on s'en sert moins, moins ça a de chance de mal marcher. [Les Shadoks]
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
13 juil. 2006 à 09:27
Hello,

faut sérieusement revoir les formulaires, là.
Lis des tutos, tu n'y es pas du tout. Il faut que tu comprennes d'abord la philosophie des formulaires.
0
moon_00 Messages postés 2 Date d'inscription mercredi 12 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 11:16
Bonjour,

Merci beaucoup, putch, davwart et malalam pour cet échange si réactif.
Je ne m'attendais pas à une réponse si rapide et suis agréablement surpris.

La réponse de putch avec <form action ="mapage.php?id=<?php echo $id; ?>" method="post"> résoud en effet mon problème.

Merci pour votre aide,

Cordialement,

Moon_00
0
Rejoignez-nous