rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

Envoyer une variable vers une page en PHP

Posté par nico, le dimanche 25 février 2001 à 14:34:11
j'ai besoin de recuperer une variable dans une page auquel on accede par lien (ceci en php). cad que j'ai une variable sur une page et que j'ai definit un lien qui envoie sur une autre page et j'ai besion de recuper une variable de la premiere dans la deuxieme.
merci
@+
nico
Répondre à nico  Signaler ce message aux modérateurs Aller au dernier message

1


  • 4
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
PhP, le dimanche 25 février 2001 à 17:05:54
Slt nico,

J'ai déjà répondu sur ce site à ce genre de question ... mais je ne me souviens plus à qui ni quand !

Revoici donc le message (heureusement que je suis conservateur !)


Passer des variables Javascript d'une page à une autre :
______________________________________________

Pour passer une variable d'une page à une autre il existe plusieurs méthodes selon que tu utilises ou non des
cadres (frames) mais voici la plus simple et la plus employée :

Passer des variables Javascript en utilisant la propriété search de l'objet location


Tu as déjà du voir dans l'adresse de ton navigateur une url du style :
" http://www.monsiteweb.com/index.htm?aa=1&bb=2"
c'est là que réside toute l'astuce !

Bon voyons comment on fait ...

Supposons que tu as 2 pages html appelées page1.htm et page2.htm

Tu désires envoyer des variables de la page1 à la page2.

Page1.htm : l'envoi

<html>
<head>
<script language="Javascript"
<!--

// On passe 2 variables tant qu'à faire
var param1="var1";
var param2="var2";

function go()
{

// Force le navigateur à charger la nouvelle page (donc page2.htm) et en même temps lui envoie
// les paramètres dans la propriété window.location.search
window.location.href="page2.htm?param1="+param1+&q­uot;&param2="+param2;

// Le fait de mettre 'param1=' et 'param2=' n'est absolument pas obligatoire pour JavaScript mais c'est + clair
// Par contre php attend les paramètre sous cette forme !!
// Voir partie nr 2
// Le point d'interrogation après le nom de la page lui est obligatoire
// Ensuite tu peux séparer chaque variable avec le caractère de ton choix, la règle veut que ce soit le "&"

}

// -->
</script>
</head>

<body>

<a href="javascript:go()">Vers la page 2</a>
</body>

</html>


Page 2 : la réception

<html>
<head>
<script language="Javascript"
<!--


// Ici on récupère les variables dans un tableau

var paramArray=window.location.search.substr(1).split("&­;")

/* Explication

Au départ :
window.location.search = "?param1=var1&param2=var2"

Ensuite on retire le "?" du début :
window.location.search.substr(1) = "param1=var1&param2=var2"

Puis on applique la méthode split() qui découpe la chaîne à chaque fois que le caractère "&" (ou un autre) est rencontré et enfin renvoie le tout dans un tableau :
window.location.search.substr(1).split("&")

Le tableau est paramArray : cool non !
*/


// Petite fonction que affiche les variables passées
function test()

for (i=0; i < paramArray.length; i++)
{
// Cerise sur le gâteau : en fait si la variable que tu passes
// contient un caractère spécial comme par ex un "!" alors
// dans window.location.search tu as %21 à la place.
// unescape() : remplace les séquences d'échappement par leur
// caractère correspondant
param=unescape(paramArray[i]);

alert(param);
}
// -->
</script>
</head>

<body onload="test()">
...
</body>
</html>


Comme je te l'ai dit il existe d'autres méthodes : si tu en as besoin voici mon e-mail :
phpujol@nexen.net


Passage de variables en utilisant Php :
________________________________

Le principe est le même que pour Javascript tout au moins pour l'envoie


Tu désires envoyer des variables de la page1 à la page2.

page1.php3 : l'envoi

<html>
<head>
<script language="Javascript"
<!--

// On passe 2 variables tant qu'à faire
var param1="var1";
var param2="var2";

function go()
{
window.location.href="page2.php3?param1="+param1+&­quot;&param2="+param2;
}

// -->
</script>
</head>

<body>

<a href="javascript:go()">Vers la page 2</a>

</body>

</html>

L'utilisation deJS n'est qu'un ex.
On peut aussi avoir :

<?php
$param1="10";
$param2="20";
?>
...

<a href="page2.php3?param1=<?php echo $param1; ?>&param2=<?php echo $param2; ?>">Vers la page 2</a>


Page 2 : la réception

Php va automatiquement créer pour toi les variables
$param1 et $param2 : tu n'as donc rien à faire !

page2.php3

<html>
<head>
</head>

<body>
...
<?php
echo "param1=".$param1."<br>";
echo "param2=".$param2."<br>";
?>
...
</body>
</html>

Une autre solution consiste à utiliser les formulaires : par ex avec un formulaire la page page1.php3 devient :

<html>
<body>

<form action="page2.php3" method="post">
<input type="submit" value="Vers la page 2">
Entrez le param 1 : <input type="text" name="param1">
Entrez le param 2 : <input type="text" name="param2">
</form>

</body>
</html>


Si tu ne désires pas saisir il suffit de transmettre les paramètres en tant que champs cachés ( hidden)

<form action="page2.php3" method="post">
<input type="submit" value="Vers la page 2">
<input type="hidden" value="<?php echo $param1; ?>" name="param1">
<input type="hidden" value="<?php echo $param2; ?>"
name="param2">
</form>

Ce qui est important c'est de bien donné un nom avec l'attribut "name" !

La page 2 reste inchangée !!




Ps : j'ai trouvé ces explications en anglais sur l'excellent site : http://www.wsabstract.com


Bye

Philippe
Répondre à PhP

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
sonali, le lundi 16 avril 2007 à 17:19:35
oui mais comment recuperer une valeur php pour l'envoyer sur une autre page php?
Répondre à sonali

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Jean-François, le mardi 17 juillet 2007 à 14:40:18
pour récupéré la variable passé dans l'URL (méthode GET) ou de manière invisible (méthode POST) dans une autre il s'uffit d'utilisé $_GET["nom_de_la_variable"] ou $_POST["nom_de_la_variable"].

ex: $variable=$_GET["nom_de_la_variable"] ou $variable=$_POST["nom_de_la_variable"]
donc pour la méthode GET tu aura une URL du type
www.commentcamarche.net/page.php?nom_de_ma_variable=valeur
Répondre à Jean-François

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
jean4713, le mercredi 30 mai 2007 à 15:04:35
De passage.....
Philippe,
Merci pour cette info.
Répondre à jean4713

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
vpetitgi, le lundi 10 septembre 2007 à 09:57:23
Merci pour ces explications lumineuses,
j'en tire grand profit pratique et pédagogique
Vincent
Répondre à vpetitgi

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
PhP, le lundi 10 septembre 2007 à 14:48:11
Bjr

Attention : mon message date un peu ... lol

S'il reste valable pour JavaScript en revanche en PHP il est impératif de passer par $_GET[] ou $_POST[] comme l'a dit Jean-François PhP  
Il y a 10 types de personnes dans le monde : ceux qui compre­nnent le binaire et les autres ...
Répondre à PhP

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
maya, le jeudi 25 octobre 2007 à 15:09:22
Bonjour,
memes informations, je veux les transmettre vers 2 pages .php
le pb c'est que la méthode post ne marche que sur la première page mentionnée dans form.

et j'ai pas su comment utiliser la méthode des sessions
Répondre à maya

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Manu, le vendredi 4 avril 2008 à 10:37:14
Bonjour,

meme si le message date, l'utilisation des variables de session est tres simples:

$_SESSION['nom_variable']=valeur;



Et le tour est joué, voila une variable de session accesible à toutes tes pages php! ;) (pour pouvoir utiliser les variables de session, il faut ouvrir une session au debut de la page :

<?
/*on appel les fonctions utiles si besoin est*/

session_start(); /* on démarre la session */
Répondre à Manu

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 asmaa_twins, le vendredi 16 mai 2008 à 20:21:30
bonsoir,
Comment je peux rediriger vers une autre page avec l'appel d'une fonction comme paramètre.
C'est urgent s'il y a des réponse vous pouvez me l'envoyer à mon E-mail""-- khawla_2002@hotmail.fr --"".
Merci pour votre attention.
Répondre à asmaa_twins
Logiciels pertinents trouvés dans les téléchargements
Télécharger WAMP Server 2.0cWAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de...Catégorie: Serveurs
Licence: Freeware/gratuit
Télécharger PagePlus SEPagePlus - PagePlus SE est un logiciel gratuit de PAO (publication assistée par ordinateur) permettant de concevoir et de créer des...Catégorie: Présentation
Licence: Freeware/gratuit
Télécharger PHP Edit 0.6PHP Edit - PHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de...Catégorie: PHP
Licence: Freeware/gratuit
Télécharger PageDefrag 2.32PageDefrag - Le défragmenteur de disque de Windows fait un boulot correct, mais il a un inconvénient : il ne défragmente ni le fichier...Catégorie: Formatage/Partitionnement
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « envoyer une variable vers une page en PHP »