Passage de variable d'une page à une autre
Résolu
-CCM-
Messages postés
927
Date d'inscription
Statut
Membre
Dernière intervention
-
leon91490 Messages postés 166 Date d'inscription Statut Membre Dernière intervention -
leon91490 Messages postés 166 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'utilise sur une page ( www/repertoire/script.php) une variable ( $var ) que je souhaite récuper dans une fonction située sur une autre page (www.fonction.php).
J'ai essayer le passage de variable avec include ("/repertoire/script.php") mais sa m'affiche toute la page.... or je ne veut que la valeur d'une variable...
J'ai lu quelques [tutos][url=http://www.lephpfacile.com/cours/21-la-portee-des-variables] mais etant novice je ne trouve pas la fonction adequate.
Pourriez vous m'aider svp ?
Merci
J'utilise sur une page ( www/repertoire/script.php) une variable ( $var ) que je souhaite récuper dans une fonction située sur une autre page (www.fonction.php).
J'ai essayer le passage de variable avec include ("/repertoire/script.php") mais sa m'affiche toute la page.... or je ne veut que la valeur d'une variable...
J'ai lu quelques [tutos][url=http://www.lephpfacile.com/cours/21-la-portee-des-variables] mais etant novice je ne trouve pas la fonction adequate.
Pourriez vous m'aider svp ?
Merci
A voir également:
- Passage de variable d'une page à une autre
- Supprimer une page word - Guide
- Imprimer tableau excel sur une page - Guide
- Créer une page facebook - Guide
- Comment traduire une page - Guide
- Passage qwerty azerty - Guide
24 réponses
Oui je connaissais ce mode de passage de variable, mais est-ce le seul qui existe ??
Si l'on change la variable contenus dans l'url, le script changeras et le contenu de la page sera changer ... pas terrible non ? ..
Si l'on change la variable contenus dans l'url, le script changeras et le contenu de la page sera changer ... pas terrible non ? ..
Bonjour,
Tu as du texte qui s'affiche dans tes 2pages?
Si tu n'as que des fonctions dans ta page fonction.php, je te conseille de faire l'inverse : un include(fonction.php) dans ton script.php
Ainsi tu vas récupérer la fonction dont tu as besoin directement dans ton script.php et tu pourras y utiliser ta fonction avec ta variable.
J'espère avoir répondu comme tu voulais parce que je n'ai pas totalement compris ce que tu veux faire ...
Tu as du texte qui s'affiche dans tes 2pages?
Si tu n'as que des fonctions dans ta page fonction.php, je te conseille de faire l'inverse : un include(fonction.php) dans ton script.php
Ainsi tu vas récupérer la fonction dont tu as besoin directement dans ton script.php et tu pourras y utiliser ta fonction avec ta variable.
J'espère avoir répondu comme tu voulais parce que je n'ai pas totalement compris ce que tu veux faire ...
Salut,
Je resume. j'ai deux pages avec du texte des images.... et des fonctions php.
L'une est à la racine (page1) l'autre est dans un répertoire de la racine (page 2).
Le but de la manip est de récuperer une variable contenu dans ma page 2 pour pouvoir l'exploiter dans ma page 1 ...
: (
Je resume. j'ai deux pages avec du texte des images.... et des fonctions php.
L'une est à la racine (page1) l'autre est dans un répertoire de la racine (page 2).
Le but de la manip est de récuperer une variable contenu dans ma page 2 pour pouvoir l'exploiter dans ma page 1 ...
: (
Et bien une solution consiste à passer d'une page à l'autre en conservant cette variable dans le lien.
Exemple :
Dans script.php tu met un lien vers "fonction.php?Variable=".$var
Puis sur fonction.php tu récupères cette variable gràce à : $_GET['Variable']
C'est ce que tu veux?
Exemple :
Dans script.php tu met un lien vers "fonction.php?Variable=".$var
Puis sur fonction.php tu récupères cette variable gràce à : $_GET['Variable']
C'est ce que tu veux?
via les sessions..
tu fait
<?php
session_start (); // mets en route les sessions....
ensuite tu mets $_SESSION["var"] = $var;
?>
ca sur la premiere page... sur la seconde page
<?php
session_start ();
$var = $_SESSION ["var"];
?>
<a href = "fonction.php">envoyer vers page de fonction</a>
ensuite tu as un lien genre <a href = "toto.html">toto</a>
et dans toto.html tu as <a href = "titi.php">titi</a>
et tu retrouves ta variable $var dans titi....
et tu mets un lien pour fermer la session par exemple sur un clic "accueil"
<
tu fait
<?php
session_start (); // mets en route les sessions....
ensuite tu mets $_SESSION["var"] = $var;
?>
ca sur la premiere page... sur la seconde page
<?php
session_start ();
$var = $_SESSION ["var"];
?>
<a href = "fonction.php">envoyer vers page de fonction</a>
ensuite tu as un lien genre <a href = "toto.html">toto</a>
et dans toto.html tu as <a href = "titi.php">titi</a>
et tu retrouves ta variable $var dans titi....
et tu mets un lien pour fermer la session par exemple sur un clic "accueil"
<
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
@xxkirastarothxx, je ne vois pas vraiment comment faire malgrès les tutaux : https://apprendre-php.com/tutoriels/tutoriel-12-traitement-des-formulaires-avec-get-et-post.html
@Passarinho44, je ne peu pas me permettre de mettre le script sur la même page car c'est une variable qui est récuperer d'un champs et c'est censé étre définit par l'administrateur...
Sauf que l'a c'est un entier que je veut transmettre !! :) le lien sera du type www.domaine.fr/index.php?var=6
très simple a modifier... lol
Sa reste la solution la plus plausible .. je vais l'essayer...
Merci a vous
@Passarinho44, je ne peu pas me permettre de mettre le script sur la même page car c'est une variable qui est récuperer d'un champs et c'est censé étre définit par l'administrateur...
Le mieux est encore de mettre des valeurs à cette variable qui sont incompréhensibles pour l'utilisateur
Sauf que l'a c'est un entier que je veut transmettre !! :) le lien sera du type www.domaine.fr/index.php?var=6
très simple a modifier... lol
Sa reste la solution la plus plausible .. je vais l'essayer...
Merci a vous
La définition de DEFINE est en fait celle d'une constante et non plus d'une variable ;)
Ouais c'est vrai ^^
et pas trops compris comment faire le passage de variable par url
Roh quand même ^^
Exemple très simple:
l'url: index.php?page=news
dans la page index.php:
$_GET['page'] est égale a 'news'
Pour les Define, tu as l'air de mal t'y prendre:
exemple:
<?php define("CITY", "Ville"); echo CITY; ?>
mettre une variable a la place de "Ville" ne devrai pas poser de problème je suppose, jamais test...
Edit: ça marche comme ça en tout cas:
$visit = "visiteurs"; define("VISITORS", "$visit");
Quant aux sessions, comme ça je vois rien de bizarre, ta valeur $max devrai être égale à 3 dans ta page index.php.
peut être à tu inclue ta page recup_variable.php dans ton index.php ?
Commence par faire des tests simples avec ce qu'on ta donné voir ce qui marche ou non.
t bien une solution consiste à passer d'une page à l'autre en conservant cette variable dans le lien. Exemple : Dans script.php tu met un lien vers "fonction.php?Variable=".$var Puis sur fonction.php tu récupères cette variable gràce à : $_GET['Variable'] C'est ce que tu veux?
En fait je ne veu pas de mettre de lien, je veut juste que par defaut ma page index.php soit construite d'une certaine manière en fonction des variables que je réupere sur une autre page ...
Quelqu'un pour m'aider? svp
Salut,
avec la methode des sessions qui t'a été préconisée plus haut dans ce post tu as utilisé les varaibles à l'envers::
index.php : ligne 1 ...... <? php session_start();?>
ligne XXX ....$max = $_SESSION['nombre'];
recup_variable.php : ligne 1 ...... <? php session_start();?>
ligne XXX ....$_SESSION['nombre'] = "3" ;
si index.php est la source de la variable il faut:
et dans la page destination tu récupéres par:
avec la methode des sessions qui t'a été préconisée plus haut dans ce post tu as utilisé les varaibles à l'envers::
index.php : ligne 1 ...... <? php session_start();?>
ligne XXX ....$max = $_SESSION['nombre'];
recup_variable.php : ligne 1 ...... <? php session_start();?>
ligne XXX ....$_SESSION['nombre'] = "3" ;
si index.php est la source de la variable il faut:
<? php session_start(); $_SESSION['nombre']="3"; ?> attention session_start() doit être tout au début avant toute balise html ou autre
et dans la page destination tu récupéres par:
<? php session_start(); $max = $_SESSION['nombre'] ?>
Salut Alain_42,
C'est sympa de m'avoir expliqué avec un exemple concret . J'ai enfin reussi... Voici mon code pour ceux a qui sa intéresserais un jour ..
index.php :
recup_variable.php :
Merci à toi et aussi aux autres membres qui ont participé a la discussion...
avec la methode des sessions qui t'a été préconisée plus haut dans ce post
J'ai du mal comprendre les autres exemples, désolé....
En tout cas pour être precis, tu es precis ;)
Bonne journée, a bientôt (sur d'autres problèmes php j'imagine ... :) )
C'est sympa de m'avoir expliqué avec un exemple concret . J'ai enfin reussi... Voici mon code pour ceux a qui sa intéresserais un jour ..
index.php :
ligne 1 ............. <?php session_start();?> ligne XXX ...........$max = $_SESSION['nombre'];
recup_variable.php :
ligne 1 ...........<?php session_start();?> ligne XX........if( isset($_POST['nbr']) ) ...........$nbr=$_POST['nbr']; ligne XXX ......$_SESSION['nombre'] = "$nbr" ;
Merci à toi et aussi aux autres membres qui ont participé a la discussion...
avec la methode des sessions qui t'a été préconisée plus haut dans ce post
J'ai du mal comprendre les autres exemples, désolé....
En tout cas pour être precis, tu es precis ;)
Bonne journée, a bientôt (sur d'autres problèmes php j'imagine ... :) )
Ok bien content de t'avoir aidé
juste une petite rectif
ligne XXX ......$_SESSION['nombre'] = "$nbr" ;
il ne faut pas les " pour une variable mets:
avec les " la variable est interprétée quand même, mais il vaut mieux prendre l'habitude de ne pas les mettre
Cordialement
@lain
juste une petite rectif
ligne XXX ......$_SESSION['nombre'] = "$nbr" ;
il ne faut pas les " pour une variable mets:
ligne XXX ......$_SESSION['nombre'] = $nbr ;
avec les " la variable est interprétée quand même, mais il vaut mieux prendre l'habitude de ne pas les mettre
Cordialement
@lain
tu peux utiliser les $_GET, les $_POST pour faire passer d'une page a une autres, rien de mieux a ma connaissance.
Il y a d'autre façon aussi, vois les DEFINE qui servent a définir une variable sur tout le site, ou il y a aussi la possibilité de transité avec les variables de $_SESSION
Il y a d'autre façon aussi, vois les DEFINE qui servent a définir une variable sur tout le site, ou il y a aussi la possibilité de transité avec les variables de $_SESSION
Oui c'est sûr c'est pas terrible :s
En général on s'en sert pour garder le language ou d'autres choses peu importantes ...
Mais regarde le post où tu es est contenu dans le lien de la page et tu ne t'amuses pas à le changer, ça n'apporte pas grand chose.. :p
Le mieux est encore de mettre des valeurs à cette variable qui sont incompréhensibles pour l'utilisateur ^^
Sinon le seul moyen que je vois est de recopier ta fonction de fonction.php dans script.php mais c'est sûr que ça n'est pas optimisé...
Sinon je ne vois pas d'autre moyen personnellement... Désolé :s
En général on s'en sert pour garder le language ou d'autres choses peu importantes ...
Mais regarde le post où tu es est contenu dans le lien de la page et tu ne t'amuses pas à le changer, ça n'apporte pas grand chose.. :p
Le mieux est encore de mettre des valeurs à cette variable qui sont incompréhensibles pour l'utilisateur ^^
Sinon le seul moyen que je vois est de recopier ta fonction de fonction.php dans script.php mais c'est sûr que ça n'est pas optimisé...
Sinon je ne vois pas d'autre moyen personnellement... Désolé :s
Tu n'as qu'à essayer la variable de session.
C'est vrai que je n'y avais pas penser.
Si tu ne sais pas l'utiliser, vas voir ici : https://openclassrooms.com/fr/
Cherche le tutoriel dessus il est très bien fait =)
C'est vrai que je n'y avais pas penser.
Si tu ne sais pas l'utiliser, vas voir ici : https://openclassrooms.com/fr/
Cherche le tutoriel dessus il est très bien fait =)
pour le Define c'est très simple:
DEFINE("TEST", "salut");
Echo TEST; // renvoie salut //
pour la variable de sessions c'est assez simple également, il faut que tu ajoute session_start(); en tout début (tout tout début) de ta page pour ouvrir une session, et ensuite tu peux ajouter des variables que tu souhaite, par exemple:
$_SESSION['ville'] = "Paris"
ce qui fait que de, normalement, n'importe ou tu peux appeler ta variable $_SESSION['ville'];
Il faut que la session_start() soit présent sur toutes les pages ou tu as besoin des variables de session ( seulement la page index.php, si transite tout par cette page)
pour plus de précisions, va effectivement voir le tutos du site du zero, très bien fait, on comprendre rapidement.
la difference principale entre les deux, c'est que DEFINE definie une varaible, pour tout le monde pareille, alors que pour les sessions sont gérées par utilisateurs, tu peux donc très bien appelé "$_SESSION['monpseudo']"
on utilise en général DEFINE pour des variables fixe, propres au site ( host, url, nom de site...), et $_SESSION pour des variables qui diffèrent entre chaque utilisateurs ( pseudo / niveau d'acces .....)
DEFINE("TEST", "salut");
Echo TEST; // renvoie salut //
pour la variable de sessions c'est assez simple également, il faut que tu ajoute session_start(); en tout début (tout tout début) de ta page pour ouvrir une session, et ensuite tu peux ajouter des variables que tu souhaite, par exemple:
$_SESSION['ville'] = "Paris"
ce qui fait que de, normalement, n'importe ou tu peux appeler ta variable $_SESSION['ville'];
Il faut que la session_start() soit présent sur toutes les pages ou tu as besoin des variables de session ( seulement la page index.php, si transite tout par cette page)
pour plus de précisions, va effectivement voir le tutos du site du zero, très bien fait, on comprendre rapidement.
la difference principale entre les deux, c'est que DEFINE definie une varaible, pour tout le monde pareille, alors que pour les sessions sont gérées par utilisateurs, tu peux donc très bien appelé "$_SESSION['monpseudo']"
on utilise en général DEFINE pour des variables fixe, propres au site ( host, url, nom de site...), et $_SESSION pour des variables qui diffèrent entre chaque utilisateurs ( pseudo / niveau d'acces .....)
Merci a vous...
Le lien sur le site du zéro : https://openclassrooms.com/fr/courses#ss_part_4
je n'ai pas reussi a utiliser define, c'est ce qu'il me faudrais ... (et pas trops compris comment faire le passage de variable par url) :S
Mon script recupere la valeur d'un champs :
et sur mon autre page qui se trouve a la racine :
j'ai un petit
c'est la variable $nbr que je veut faire passer du racine/repertoire/scriptphp au racine/script2.php
Le lien sur le site du zéro : https://openclassrooms.com/fr/courses#ss_part_4
je n'ai pas reussi a utiliser define, c'est ce qu'il me faudrais ... (et pas trops compris comment faire le passage de variable par url) :S
Mon script recupere la valeur d'un champs :
<?php if( isset($_POST['ok']) )// si formulaire soumis { if (isset($_POST['nbr']) ) $nbr=$_POST['nbr']; else $nbr="0"; } ?>
et sur mon autre page qui se trouve a la racine :
j'ai un petit
$max = $nbr;
c'est la variable $nbr que je veut faire passer du racine/repertoire/scriptphp au racine/script2.php
Essaie
$nbr = 1;
DEFINE(TEST, $nbr);
dans la première page
Et
echo TEST;
dans la seconde page
(je ne sais pas s'il est possible de mettre une variable dans le DEFINE donc rien de sûr hein ^^" , je pense même que ça ne fonctionnera pas mais qui ne tente rien n'a rien ;) )
$nbr = 1;
DEFINE(TEST, $nbr);
dans la première page
Et
echo TEST;
dans la seconde page
(je ne sais pas s'il est possible de mettre une variable dans le DEFINE donc rien de sûr hein ^^" , je pense même que ça ne fonctionnera pas mais qui ne tente rien n'a rien ;) )
?? sa ne marche pas :
Notice: Use of undefined constant TEST - assumed 'TEST' in C:\Program Files\EasyPHP 2.0b1....
Je vien d'essayer avec les $Post_[]; et $GET ...
recup_variable.php :
if( isset($_POST['nbr']) )
$nbr=$_POST['nbr'];
index.php :
$max = $_GET['nbr'];
M'enfin sa doit bien se faire un passage de variable d'un doc a un autre .... La j'avoue que sa me prends un peu la tête bloquer sur un truc aussi simple !!
recup_variable.php :
if( isset($_POST['nbr']) )
$nbr=$_POST['nbr'];
index.php :
$max = $_GET['nbr'];
M'enfin sa doit bien se faire un passage de variable d'un doc a un autre .... La j'avoue que sa me prends un peu la tête bloquer sur un truc aussi simple !!
recup_variable.php : if( isset($_POST['nbr']) ) $nbr=$_POST['nbr']; index.php : $max = $_GET['nbr'];
la par contre y'a rien qui marche et c'est bien normal, je dirais que je comprends limite pas un mot du code xD
A voir le code tu pensais que POST servait a définir une variable, et GET pour la récupéré non ? en gros t'as rien lu des tutos ? :P
les Variable POST c'est pour passé les donnés via formulaire
par exemple si tu as un formulaire avec un champ <input type='text' name='test' />
tu pourra récupéré $_POST['test'], et cette valeur serra égale a ce que l'utilisateur aura entré dans le formulaire.
Le $_GET sert a récupéré les variables stroquée dans l'URL, j'ai mis l'exemple dans le post précédent.
Personne pour m'éclairer ???
En resume :
Je recupere une variable depuis un formulaire.
Je doit passer cette variable pour pouvoir l'utiliser sur ma page d'accueil....
Comme la gestion des couleurs de certains forums par exemple !!
La couleur est definie sur une page d'administration et en fonction de cette variable on affiche un forum bleu ou rose ou vert .....
En resume :
Je recupere une variable depuis un formulaire.
Je doit passer cette variable pour pouvoir l'utiliser sur ma page d'accueil....
Comme la gestion des couleurs de certains forums par exemple !!
La couleur est definie sur une page d'administration et en fonction de cette variable on affiche un forum bleu ou rose ou vert .....