Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/06/2006, 15h39   #1
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Par défaut Rendre super-globale une variable

Bonjour php-man and php-woman.
A l'instare de $_SERVER ou $_POST, je cherche à rendre super-globale une variable $_PERSONNAL. Est ce possible et si oui comment ?
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 16h10   #2
Membre éclairé
 
Avatar de sohnic
 
Femme
bioinfo
Inscription : mai 2003
Messages : 385
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : bioinfo

Informations forums :
Inscription : mai 2003
Messages : 385
Points : 363
Points : 363
Bonjour,
Je n'ai pas la reponse a ta question, mais pourquoi n'utilises-tu pas les variables $_SESSIONS ?
(petite curiosite personnelle).

Sohnic
sohnic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 16h17   #3
Membre confirmé
 
Avatar de griese
 
Inscription : juin 2006
Messages : 646
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juin 2006
Messages : 646
Points : 243
Points : 243
Salut,
T'entends quoi par super global ?
griese est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 21h17   #4
Membre Expert
 
Inscription : juillet 2004
Messages : 1 033
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 1 033
Points : 1 050
Points : 1 050
Salut,

Le tableau de global $GLOBALS[] ? Ou le mot clé global à tout hasard.

http://www.php.net/manual/fr/languag...bles.scope.php

bye
ePoX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 08h58   #5
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
$_temp[]="x";
$_temp[]="y";
$_temp[]="z";
$GLOBALS["_PERSONNAL"] = $_temp;
echo "[".$GLOBALS["_PERSONNAL"][2]."]<BR>"; // correct
echo "[".$_PERSONNAL[2]."]<BR>"; // correct
 
function toto()
{
	echo "[".$_PERSONNAL[2]."]<BR>"; // incorrect
 
}
toto();
Ce code affiche
Ce que je veux c'est que $_PERSONNAL soit une super-globale.
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 09h12   #6
Membre Expert
 
Homme
Inscription : janvier 2004
Messages : 1 238
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2004
Messages : 1 238
Points : 1 421
Points : 1 421
Code :
1
2
3
4
5
6
7
8
$var = 'truc';
 
function machin() {
   global $var;
   echo $var;
}
 
machin();
__________________
PHP :
Regle n°1 : mysql_query(...), mysql_connect(...) et mysq_select_db(...) doivent EN DEBUG etre suivies de or die(mysql_error()); (mais jamais en production)
Regle n°2 : Mieux encore : mysql_query($requete) or die("$requete<br/>".mysql_error());
Regle n°3 : echo '<pre>';var_dump($var);echo '</pre>'; affiche le contenu et le type d'une variable.
Publiez vos textes de fantasy et de science-fiction sur http://www.cercledefaeries.com/concours/
Fladnag est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 09h20   #7
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Ca j'ai bien compris, Fladnag, mais cela ne fait pas de $var une super-globale.
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 09h32   #8
Expert Confirmé
 
Avatar de Eusebius
 
Inscription : avril 2003
Messages : 3 286
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 3 286
Points : 3 155
Points : 3 155
Citation:
Envoyé par thanaos
Ca j'ai bien compris, Fladnag, mais cela ne fait pas de $var une super-globale.
Pour ce que tu veux, je ne vois pas d'autre solution que d'utiliser $GLOBALS
Eusebius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 09h51   #9
Membre Expert
 
Homme
Inscription : janvier 2004
Messages : 1 238
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2004
Messages : 1 238
Points : 1 421
Points : 1 421
Seule autre solution pour définir des données visible partout : define

mais ca transforme ta "variable" en constante... seul inconvenient ;o)
__________________
PHP :
Regle n°1 : mysql_query(...), mysql_connect(...) et mysq_select_db(...) doivent EN DEBUG etre suivies de or die(mysql_error()); (mais jamais en production)
Regle n°2 : Mieux encore : mysql_query($requete) or die("$requete<br/>".mysql_error());
Regle n°3 : echo '<pre>';var_dump($var);echo '</pre>'; affiche le contenu et le type d'une variable.
Publiez vos textes de fantasy et de science-fiction sur http://www.cercledefaeries.com/concours/
Fladnag est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 10h03   #10
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Et comme une constante est non modifiable...
Merci quand même.
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 20h47   #11
Membre Expert
 
Inscription : juillet 2004
Messages : 1 033
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 1 033
Points : 1 050
Points : 1 050
Salut,

Je ne compend pas ton exemple....

En effet $_PERSONNAL sort de nul part, de ce fait je ne comprend pas comment ton script peut fonctionner, à part peut être un de ces trucs qui font que je hais PHP par moment....

Bref, pourquoi ne pas être aller au bout de l'idée ?
Citation:

$GLOBALS["_PERSONNAL"] = array( "x","y","z");

echo "[".$GLOBALS["_PERSONNAL"][2]."]<BR>"; // correct

function toto()
{
echo "[".$GLOBALS["_PERSONNAL"][2]."]<BR>"; // correct

}
toto();
fin voila,

bbye
ePoX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 10h39   #12
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Ca , j'ai bien compris. Je voulais juste essayer d'utiliser $_PERSONNAL comme $_POST ou $_SERVER.
Il semble que ce ne soit pas possible.
Merci à tous.
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 10h44   #13
Rédacteur
 
Avatar de BrYs
 
Inscription : octobre 2002
Messages : 2 016
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2002
Messages : 2 016
Points : 2 038
Points : 2 038
Citation:
Envoyé par thanaos
Ca , j'ai bien compris. Je voulais juste essayer d'utiliser $_PERSONNAL comme $_POST ou $_SERVER.
Il semble que ce ne soit pas possible.
Merci à tous.
Non ça n'est pas possible.
Le seul moyen est d'utiliser $GLOBALS si tu souhaites modifier les valeurs.
BrYs est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 11h05   #14
Membre du Club
 
Avatar de thanaos
 
Inscription : mai 2006
Messages : 89
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 89
Points : 50
Points : 50
Merci.
thanaos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h58.


 
 
 
 
Partenaires

Hébergement Web