begin process at 2012 02 11 00:53:43
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > RECUPERER LES VARIABLES UTILISATEUR

RECUPERER LES VARIABLES UTILISATEUR


 Information sur la source

Note :
7,67 / 10 - par 3 personnes
7,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Classé sous :variables Niveau :Débutant Date de création :05/01/2005 Date de mise à jour :14/03/2006 20:06:14 Vu :6 023

Auteur : piedpierre

Ecrire un message privé
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

récupère les variables utilisateurs initialisées à l'exclusion des globales et
des super-globales, les tableaux et variables sont directement exploitable en php

Source

  • <?php
  • $b=get_defined_vars();$tab=array();
  • $a=array_flip(array('_SESSION','HTTP_SESSION_VARS','_REQUEST',
  • '_FILES','HTTP_POST_FILES','_ENV','HTTP_ENV_VARS',
  • '_SERVER','HTTP_SERVER_VARS','_COOKIE',
  • 'HTTP_COOKIE_VARS','_GET','HTTP_GET_VARS',
  • '_POST','HTTP_POST_VARS','GLOBALS')
  • );echo'<pre>';
  • foreach($b as $k=>$v){
  • if(!array_key_exists($k,$a)){$i=var_export($b[$k],1);
  • /*Corecction d'un bug d'affichage de virgule en fin de tableau (marche jusqu'à tableau à 4 niveau de tableau imbriqués
  • mais peu fausser les valeurs si elles contiennent des sauts de ligne suivi de parenthèse
  • Dans ce cas utiliser plutôt $i=htmlspecialchars($i); il y aura les virgules mais les valeurs seront ok.*/
  • $i=htmlspecialchars(str_replace(array(",\n )",",\n )",",\n )",",\n)"),array("\n )","\n )","\n )","\n)"),$i));
  • if(is_array($v)){echo '$',$k,'=',$i,';<br />';}/* affiche les tableaux */
  • else{$tab[$k]=$i;}/* stocke les variables*/
  • }
  • }
  • foreach($tab as $k=>$v){echo '$'.$k.' = '.$v.';<br />';}/* affiche les variables */
  • echo'</pre>';
  • //********************************************************************************************************
  • // Variante en fonction
  • function vars(){$tab=array();$b=$GLOBALS;
  • $a=array_flip(array('_SESSION','HTTP_SESSION_VARS','_REQUEST',
  • '_FILES','HTTP_POST_FILES','_ENV','HTTP_ENV_VARS',
  • '_SERVER','HTTP_SERVER_VARS','_COOKIE',
  • 'HTTP_COOKIE_VARS','_GET','HTTP_GET_VARS',
  • '_POST','HTTP_POST_VARS','GLOBALS')
  • );echo'<pre>';
  • foreach($b as $k=>$v){
  • if(!array_key_exists($k,$a)){$i=var_export($b[$k],1);
  • /*Corecction d'un bug d'affichage de virgule en fin de tableau (marche jusqu'à tableau à 4 niveau de tableau imbriqués
  • mais peu fausser les valeurs si elles contiennent des sauts de ligne suivi de parenthèse
  • Dans ce cas utiliser plutôt $i=htmlspecialchars($i); il y aura les virgules mais les valeurs seront ok.*/
  • $i=htmlspecialchars(str_replace(array(",\n )",",\n )",",\n )",",\n)"),array("\n )","\n )","\n )","\n)"),$i));
  • if(is_array($v)){echo '$',$k,'=',$i,';<br />';}/* affiche les tableaux */
  • else{$tab[$k]=$i;}/* stocke les variables*/
  • }
  • }
  • foreach($tab as $k=>$v){echo '$'.$k.' = '.$v.';<br />';}/* affiche les variables */
  • echo'</pre>';
  • }
  • vars();
  • ?>
<?php
 $b=get_defined_vars();$tab=array();
 $a=array_flip(array('_SESSION','HTTP_SESSION_VARS','_REQUEST',
 '_FILES','HTTP_POST_FILES','_ENV','HTTP_ENV_VARS',
 '_SERVER','HTTP_SERVER_VARS','_COOKIE',
 'HTTP_COOKIE_VARS','_GET','HTTP_GET_VARS',
 '_POST','HTTP_POST_VARS','GLOBALS')
 );echo'<pre>';
 foreach($b as $k=>$v){
     if(!array_key_exists($k,$a)){$i=var_export($b[$k],1);     
/*Corecction d'un bug d'affichage de virgule en fin de tableau (marche jusqu'à tableau à 4 niveau de tableau imbriqués
mais peu fausser les valeurs si elles contiennent des sauts de ligne suivi de parenthèse
Dans ce cas utiliser plutôt $i=htmlspecialchars($i); il y aura les virgules mais les valeurs seront ok.*/
$i=htmlspecialchars(str_replace(array(",\n      )",",\n    )",",\n  )",",\n)"),array("\n      )","\n    )","\n  )","\n)"),$i));
		 if(is_array($v)){echo '$',$k,'=',$i,';<br />';}/* affiche les tableaux */
         else{$tab[$k]=$i;}/* stocke les variables*/
     }
 }
foreach($tab as $k=>$v){echo '$'.$k.' = '.$v.';<br />';}/* affiche les variables */
echo'</pre>';
//********************************************************************************************************
// Variante en fonction
function vars(){$tab=array();$b=$GLOBALS;
 $a=array_flip(array('_SESSION','HTTP_SESSION_VARS','_REQUEST',
 '_FILES','HTTP_POST_FILES','_ENV','HTTP_ENV_VARS',
 '_SERVER','HTTP_SERVER_VARS','_COOKIE',
 'HTTP_COOKIE_VARS','_GET','HTTP_GET_VARS',
 '_POST','HTTP_POST_VARS','GLOBALS')
 );echo'<pre>';
 foreach($b as $k=>$v){
     if(!array_key_exists($k,$a)){$i=var_export($b[$k],1);     
/*Corecction d'un bug d'affichage de virgule en fin de tableau (marche jusqu'à tableau à 4 niveau de tableau imbriqués
mais peu fausser les valeurs si elles contiennent des sauts de ligne suivi de parenthèse
Dans ce cas utiliser plutôt $i=htmlspecialchars($i); il y aura les virgules mais les valeurs seront ok.*/
$i=htmlspecialchars(str_replace(array(",\n      )",",\n    )",",\n  )",",\n)"),array("\n      )","\n    )","\n  )","\n)"),$i));
		 if(is_array($v)){echo '$',$k,'=',$i,';<br />';}/* affiche les tableaux */
         else{$tab[$k]=$i;}/* stocke les variables*/
     }
 }
foreach($tab as $k=>$v){echo '$'.$k.' = '.$v.';<br />';}/* affiche les variables */
echo'</pre>';
}
vars();
?>

 Conclusion

get_defined_vars() retourne un tableau de toutes les variables définies
sauf les globales pour certaines versions de php,
c'est ensuite filtré par !array_key_exists() pour exclure les super
globales...testé sur PHP>= 4.3


 Historique

06 janvier 2005 01:14:14 :
14 mars 2006 19:42:21 :
mise à jour suite à évolution de php et aux commentaires, les variables obtenues sont directement exploitable en php
14 mars 2006 19:53:14 :
ajout de $tab=array(); si aucune variable foreach ne renvoi pas d'erreur
14 mars 2006 20:06:14 :
Ajout de la fonction vars() qui permet une utilisation simple et transparente..., tapez juste vars() et vous verrez toutes vos variables initialisées.. :)

 Sources du même auteur

COLORISE UNE IMAGE AVEC GD

 Sources de la même categorie

Source avec Zip Source avec une capture GENERATEUR D'ONGLET DE NAVIGATION PHP par pos123
FORMATER UN LIEN YOUTUBE, DAILYMOTION OU VIMEO POUR L'UTILIS... par kgb93
Source avec Zip Source avec une capture PAGINATION + FICHIER CSS par profdi
Source avec Zip Source avec une capture SYSTEME D'AUTHENTIFICATION PHP AVEC PROTÉCTION KEYLOGGER par mtrix000
Source avec Zip Source avec une capture GENERATEUR DE BOUTONS DE PARTAGES POUR RESEAUX SOCIAUX par cod57

 Sources en rapport avec celle ci

EXTRACTEUR DE VARIABLES DE FORMULAIRES par azqsazqs
FONCTION DE SÉCURITÉ CONTRE LA POLLUTION DES VARIABLES ET LE... par kankrelune

Commentaires et avis

Commentaire de Anthomicro le 06/01/2005 18:10:02

Salut,

<? est à remplacer par <?php et <br> par <br />

a +

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Cookies, mettre et relire DES Variables [ par codefalse ] Hello allcomment je pourrai faire pour mettre deux variables dans un cookie ( pseuod et pass ) et les relire dans le bon ordre ( mettre dans la variab problème de comparaison de variables string [ par julp ] je cherche comment savoir si deux variables (en fait ce sont des chaînes) sont égales. Pour l'instant j'ai essayé ceci :if (!($a==$b)):instruc;endif;m tiscali et envoie de variables [ par lefab2 ] 'lutj'ai un pb chez tiscali :si j'appeles ma page de cette facon :adresse_de_ma_page/page.php?mavariable=vraiet que le code de ma page soit &lt;?echo Concaténation de nom de variables ! [ par fil ] Concaténation de nom de variables !bonjour j'ai un petit problème je voudrais creer des noms de variable dynamiquement dans une boucle :J'ai des varia text to variable [ par Freneticode ] ---&gt; FrenetiCodehello a tous ..voila je suis en train de cree une function qui me permet de liste toute les variables systeme...et les autres!!!voi oracle!!!!!!! et ses binds variables..... [ par booth ] juste une petite question...j'essaie d'utiliser les bind variables d'oracle pour tuner un peu, mais pour le select ke je tente de faire, ya rien ki pa Oracle!!!!!!!!et ses bind variables [ par booth ] juste une petite question...j'essaie d'utiliser les bind variables d'oracle pour tuner un peu, mais pour le select ke je tente de faire, ya rien ki pa des salsh dans les variables issues de formulaire -> grrrrr [ par skrol29 ] Bonjour,Je viens de m'aperçevoir que PHP (ou bien le protocole HTTP) ajoute des slashes (/) devant certains caractères commes le guillement simple (') pb de variables [ par lebobby ] Bonjourje voudrais savoir comment faire pour relire des variables stockes dans une bd mysql qui sont stockees sous le forme :bateau_1_rougebateau_2_ro passer des variables d'un pop-up a la page parent [ par carpathesknight ] Salut,g un petit prob;Je souhaite faire passer des variables d'un pop-up a la page qui l'a appelé.Je l'ai fais en javascript voici le code de la fonct


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales