Passer une variable d'une page a une autre

devlop78
Invité n'ayant pas de compte PHPfrance

12 juil. 2011, 03:43

Comment sais-tu ce qu'il faut récupérer.

Si tu mets comme nom de ton champ hidden l'identifiant (mettre un chiffre nom nom c'est déjà limite), tu ne sauras pas, proprement, quels sont les id passés.
<input type="hidden" name="id[]" value="$id" />

foreach ($_POST['id'] as $id)
{
echo $id;
}
L'idée a déjà été suggérée ...

Mammouth du PHP | 725 Messages

12 juil. 2011, 04:01

alors maintenant est ce que je ferais name=id[] ou bien je ferais nom=$id, chacun me donne un truc different de l'autre

devlop78
Invité n'ayant pas de compte PHPfrance

12 juil. 2011, 04:13

Si tu trouves que les informations que l'on te donnent sont différentes, voire contradictoire, c'est à toi d'essayer de comprendre les mécanismes mis en jeu. Tout simplement que rajouter des crochets à la fin du nom d'un champ de formulaire (quelqu'il soit), le "transforme en tableau". Côté PHP, c'est donc un simple tableau que l'on a.

Fais donc la bonne transition des données avec POST, et tu vérifieras ensuite que les données reçues correspondent à tes attentes avec un simple var_dump($_POST) ou print_r($_POST).

Mammouth du PHP | 725 Messages

12 juil. 2011, 05:17

puisque le nom du champs hidden est un id differents, je peux utiliser $row_ti->id, je recupere tous mes id dans les champs inputs, si je les hidden avec les text, je les recupere comme valeurs et quand je mets un print_r($_POST); dans page2.php je recois un Array() vide, sachant que j'ai mis form avec un lien cliquable

Mammouth du PHP | 2278 Messages

12 juil. 2011, 09:44

C'est le print_r dans le foreach?
stdClass Object ( [id] => 43 [sh_a] => nom1 [sh_tr] => prenom1 [nationality] => nat1 [country_code] => na [sh_url] => url1 [count] => 1 [views] => 12 [qu] => 1 [ana] => 0 [dk] => 0 [dr] => 0 [BTV] => 0 [tl] => 0 [anam] => 0 [sr] => 0 [fi] => 0 [Pub] => 0 [ah] => 0 [ad] => 0 [Misc] => 0 )

Si c'est celui dans le foreach, et s' il y a la valeur que tu veux mettre dans on <input...>, il suffirait, pour clarifier d'écrire un truc comme ca:
$valeur = $row_ti['ana'];// par exemple
<input...... value='$valeur'>
s'il n'y a pas la valeur que tu crois, il faut remonter dane le script voir si ton tableau est bien rempli (print_r($tab_ti) avant le foreach;
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Mammouth du PHP | 725 Messages

12 juil. 2011, 15:10

oui
		    foreach($tabl_ti as $row_ti)
        {
        	print_r($row_ti);
si j'ai bien compris la 2eme partie c'est:
echo '<input type="hidden" name="'.$row_ti->id.'" value="'.$row_ti->id.'" />';
echo '<input type="text" name="'.$row_ti->id.'" value="'.$row_ti->id.'" />';
echo '<div class="Span02">'.$pic.'</div>';
dans la partie type=text il m'affiche l'id.

j'ai mis print_r($tab_ti) avanr foreach et il m'affiche le meme resultat

Mammouth du PHP | 2278 Messages

12 juil. 2011, 20:42

si ce print_r avant le foreach n'affiche pas les valeurs que tu vroyais qu'il contenait, il faut examiner le code antérieur et voir comment ce tableau est rempli...
Si ce print_r affiche les valeurs que tu crois, il suffit de remplacer hidden par text dans les input pour voir si ça passe correctement.
Personnellement, quand il s'agit de tableaux , je préfère :
$valeur= $tab[$y]['valeur'];
$identif = $tab[$y]['identif'];
et <input type=' hidden' name ='$identif' value ='$valeur'>
au lieu de
<input type=' hidden' name ='{tab[$y]['identif']}' value ='{tab[$y]['valeur']}'>
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Mammouth du PHP | 725 Messages

13 juil. 2011, 05:49

le print_r avant et dans le foreach affiche les valeurs retournees, et j'ai deja remplace hidden par text, et je recois les id dans la valeur de text:
echo '<input type="hidden" name="'.$row_ti->id.'" value="'.$row_ti->id.'" />';
echo '<input type="text" name="'.$row_ti->id.'" value="'.$row_ti->id.'" />';
echo '<div class="Span02">'.$pic.'</div>';

Mammouth du PHP | 2278 Messages

13 juil. 2011, 20:25

Si je suis bien,
le formulaire est correctement rempli -> OUI/NON
le script récepteur est page2.php ->Oui /NON
le print_r($_POST) dans page2.php affiche Array() ->OUI/NON
le print_r($_POST) dans page2.php affiche un Array contenant des valeur ->OUI/NON
bêtement : il y a un bouton submit dans la page envoyeuse -> Oui/NON
ou un <input type= 'submit'..; />
Às propos, je viens d'apprendre en testant mes pages en HTML Strict qu'il faut aussi se payer <br /> (je dis ça parce que j'ai vu que tu le fais déjà pour <input... />. Moi je suis de la vieille école et n'avais pas évolué là-dessus,
Bonne soirée.
M.B.
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Mammouth du PHP | 725 Messages

14 juil. 2011, 04:16

Si je suis bien,
le formulaire est correctement rempli -> OUI/NON
Je n'ai pas de champs a remplir, que des liens et des photos, que je dois cliquer la dessus et envoyer l'id
le script récepteur est page2.php ->Oui /NON
oui
le print_r($_POST) dans page2.php affiche Array() ->OUI/NON
oui array vide => Array()
le print_r($_POST) dans page2.php affiche un Array contenant des valeur ->OUI/NON
un array vide Array()
bêtement : il y a un bouton submit dans la page envoyeuse -> Oui/NON
ou un <input type= 'submit'..; />
un input type submit
Bonne soirée.
M.B.
merci a vous aussi

Mammouth du PHP | 725 Messages

18 juil. 2011, 04:57

je vais le passer par le biais de l'url, merci a vous