Page 1 sur 1

Problème de récupération de variable

Posté : 22 févr. 2008, 15:02
par danne
Bonjour et merci d'avance si vous pouvez me répondre.
Je débute en PHP et j'ai un problème avec les variables. Je récupère une variable d'une base de données
                <?php $numeropereH = $donnees['NumeropereH']; ?>
Si je l'inscrit sur la page 
	<p id = "blocommun"><?php echo $numeropereH; ?></p>               AFFICHE 1000
Je créé un formulaire que je l'envoie à la page 2
	echo "<form action ='page2.php' method = 'post'>
	<input type ='hidden' name = 'variableH' value = '$numeropereH'>
	<input type = 'submit' value = 'ok'>
	</form>\n";
Sur page2
              <p id = "blocommun"><?php echo $_POST['variableH']; ?></p>   AFFICHE $numeropereH
Comment je pourrai récupérer sur la page 2 le même résultat que la page 1 soit 1000

Posté : 22 févr. 2008, 15:14
par Ryle
Modération :
danne, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ


Quant à ton problème, ce que tu as fait doit fonctionner, il faut à mon avis simplement corriger les attributs de tes balises html pour qu'il n'y ait pas d'espace entre le nom de l'attribut le égal et sa valeur : attribut="valeur"

Posté : 22 févr. 2008, 16:27
par danne
Désolé pour les balises, je n'avais pas lu.
Quand à mon problème, merci pour la réponse mais c'est pareil en enlevant les espaces dans le HTML
Je me retrouve toujours avec le nom de la variable et non son contenu

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Posté : 22 févr. 2008, 16:59
par Patriboom
Il est normal que tu te retrouves toujours avec le nom de la variable plutôt que son contenu, car la création de ton formulaire - telle que décrite ci-haut - n'est pas faite par PHP, mais par HTML. Que que ton INPUT porte un contenu PHP, il faut demander à PHP de l'y mettre. Voici qui pourrait t'aider.

Code : Tout sélectionner

<input name="Nom_de_la_case" value="<?php echo $Variable_portant_contenu; ?>" >
ou encore, tu peux tout confier à PHP, mais il faut alors faire bien attention aux guillements et apostrophes:
<?php
  echo '<input name="Nom_de_la_case" value="'.$Variable_portant_contenu.'>';
?>

Posté : 22 févr. 2008, 17:12
par danne
Merci Patriboom c'est ok çà fonctionne

Posté : 22 févr. 2008, 17:20
par Ryle
@Patriboom : bah euh... certes, m'enfin la seconde solution que tu lui donnes, c'est ce qu'il faisait déjà non ? (si on la met un peu en couleur)
	echo "<form action ='page2.php' method = 'post'>
	<input type ='hidden' name = 'variableH' value = '$numeropereH'>
	<input type = 'submit' value = 'ok'>
	</form>\n";
Enfin bon, le principal c'est que cela fonctionne :)

Posté : 22 févr. 2008, 17:25
par Patriboom
Oui, j'ai tenté de rester le plus près possible de son code pour qu'il s'y retrouve.
Cependant, il y a une différence. Tout son code était en HTM et moi j'y introduit du PHP.

Posté : 22 févr. 2008, 18:29
par Ryle
Euh.... bah dans la mesure où il avait mit un "echo" c'était déjà du php non ? du coup au mieux on pouvait sortir la variable pour faire quelque chose de propre, et virer les espaces superflux, mais à part ça, j'arrive pas à voir ce qui a pu résoudre son problème (ni concretement le problème qui pouvait lui rester :)) ... m'enfin c'est pas grave, je me posais juste la question ;)

Posté : 22 févr. 2008, 22:25
par Patriboom
Avant que ne soient inclus les code PHP dans son message, je ne voyais pas le echo. Je me suis fais avoir par le spaghetti des codes entremêlés sans couleurs ou il y a quelque chose de changé.

En bref, vivement l'indentation du code, la coloration et le code propre.

Posté : 24 févr. 2008, 01:09
par danne
Ce qui a réglé mon problème c'est de changer dans mon formulaire

<input type ='hidden' name = 'variableH' value = '$numeropereH'>

par

<input type='hidden'name='variableH'value="<?php echo $numeropereH; ?>" >