France Hardware : Forums de discussion
Retrouvez les prix près de chez vous :  
Index du forum | Liste des membres | Liste des groupes | Inscription | F-A-Q | Recherche
Pseudo :    Password :     
23 061 membres enregistrés - 1 896 902 posts - 97 444 topics
Index des forums FH  | Index des forums DegroupNews
      Programmation
           [PHP][resolu]petit beug...
24 connectés(record : 207 le 05 juin 2007 - 05 h 23)

Vous devez vous connecter pour répondre au topic.
Precedent | 1,2
[PHP][resolu]petit beug...

MrGinglE


Messages : 55
Inscrit le 16/05/05
Ville : Grenoble
Non connecté
  Posté le 24 mai 2005 - 22 h 34 m 14 s
Reprise du message précédent :



la question de l'ignorant de service : on retourne une variable locale à la fonction. Mais à la fin de la fonction, la mémoire locale n'est pas libérée, auquel cas l'espace utilisé par les locales peut être à tout moment occupé par un autre process ?

Si tu as besoin d'être eclairé sur les variables et leur portées dans un script PHP, consulte cette page : http://tecfa.unige.ch/guides/php/php5_fr/language.variables.scope.html


autre chose maintenent... si je ne vaux pas mettre de valeur par defaut dans ma fonction,


La je rejoins mik69, ou es l'intéret ? :???:
C'est surtout le 'sinon tampis', alors à la limite, tu peut ecrire ça
$var = (isset($_GET[$var])) ? $_GET[$var] :NULL;
mais cette vérification ne sert pas à grand chose et une fonction est totalement superflue dans ce cas.

Essai de préciser un peu plus ;)



Il n'y à pas de partage sans savoir, mais mieux vaut ne pas partager quand on ne sait pas... http://mrgingle.info !!

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 24 mai 2005 - 23 h 03 m 33 s
Si tu ne veux pas forcément définir de variable, il ne faut pas utiliser la méthode du $variable = fonction(), car dans ce cas-là $variable sera forcément affectée

Tu as donc 2 choix : variable globale ou passage par référence

- variable globale

    Code     
1. // anti bug bizarre balide code
2. fonction($a,$b,....)
3. {
4.     global $var;
5.     // test machin chose
6.     if( ... ) unset($var);
7. }
- passage par référence
    Code     
1. // anti bug bizarre balide code
2. fonction($a,&$b)
3. {
4.     // test machin chose
5.     if( ... ) unset($b);
6. }



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

mik69
Allez l'OL !

Messages : 1 282
Inscrit le 02/07/03
Ville : GRIGNY 69
Non connecté
  Posté le 24 mai 2005 - 23 h 13 m 14 s
Je m'en souviendrai de l'anti bug Erel ;)




fanfouer
Paysan completement ADSLisé

Messages : 1 157
Inscrit le 04/01/05
Ville : annecy
Non connecté
  Posté le 25 mai 2005 - 07 h 59 m 43 s
enfait, dans mes récupération de variables, j'utilise les deux méthodes possibles (POST et GET). Or, des fois dans mon code, un meme variable peut etre récupéré par POST et GET car je ne sait pas d'ou elle arrive (soit d'un formulaire ou de l'adresse). Sachant que c'est soit par GET ou par POST qu'elle est définie (jamais les deux) ma variable va forcement se retrouver avec une valeur par défaut dans tous les cas vu qu'il y aura toujour une fonction que va me la mettre en valeur par defaut.
J'aimerai le moyen d'enlever la définition de la valeur par defaut dans la fonction POST (qui est la meme que GET mais en changeant la méthode) comme ca, si la variable existe et est définie, on la récupère dans l'adresse sinon rien en se passe.
la fonction GET n'est pas à toucher

Merci de votre aide car j'avoue que c'est un peu bordelique mes explication



-- // Observatoire ADSL by fanfouer // --
http://www.infos-reseaux.com


MrGinglE


Messages : 55
Inscrit le 16/05/05
Ville : Grenoble
Non connecté
  Posté le 25 mai 2005 - 08 h 29 m 46 s
Si j'ai bien compris, tu veut, si la méthode $_POST est utilisé, récupérer la valeur de $_POST[$var], sinon, récupérer $_GET[$var] ou la valeur par défaut si elle est absente ?

Alors suffit d'utiliser un 'if' et une seul fonction :

    Code     
1. function recupVar($var, $newvalue){
2.  if(isset($_POST[$var])) $var = $_POST[$var];
3.  else $var = (isset($_GET[$var])) ? $_GET[$var] : $newvalue;
4. return $var;
5. }
6. $var = recupVar("test", "Undefined");
7. echo $var;


Message édité 1 fois, la dernière par MrGinglE le 25 mai 2005 - 08 h 30.

Il n'y à pas de partage sans savoir, mais mieux vaut ne pas partager quand on ne sait pas... http://mrgingle.info !!

fanfouer
Paysan completement ADSLisé

Messages : 1 157
Inscrit le 04/01/05
Ville : annecy
Non connecté
  Posté le 25 mai 2005 - 08 h 38 m 25 s
alor c'est encore mieu!!! ca marche et merci! :D



-- // Observatoire ADSL by fanfouer // --
http://www.infos-reseaux.com


iraysyvalo
-

Messages : 9 647
Inscrit le 19/11/02
Ville : Lyon
Non connecté
  Posté le 25 mai 2005 - 14 h 01 m 47 s


Le 24 mai 2005 - 22 h 34, MrGinglE a écrit :


la question de l'ignorant de service : on retourne une variable locale à la fonction. Mais à la fin de la fonction, la mémoire locale n'est pas libérée, auquel cas l'espace utilisé par les locales peut être à tout moment occupé par un autre process ?

Si tu as besoin d'être eclairé sur les variables et leur portées dans un script PHP, consulte cette page : http://tecfa.unige.ch/guides/php/php5_fr/language.variables.scope.html


Je crois que Bernie ne parlait pas que de la portee des variables PHP ..




Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.


Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 25 mai 2005 - 15 h 17 m 11 s
Ben si c'est juste pour $_GET et $_POST, utilise tout simplement :

$var = $_REQUEST['var'];



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

MrGinglE


Messages : 55
Inscrit le 16/05/05
Ville : Grenoble
Non connecté
  Posté le 25 mai 2005 - 18 h 22 m 47 s
pas con... :)



Il n'y à pas de partage sans savoir, mais mieux vaut ne pas partager quand on ne sait pas... http://mrgingle.info !!

Precedent | 1,2
Page genérée en 0.4479 secondes par RahForum 2.0 | Gzip off |  Stats |  Metaforums |  RSS
© 2004 Cerbere Systems.
Prix Matériel Informatique | Informatique Lyon | Informatique Grenoble | Informatique Annecy | Informatique Marseille | Informatique Bordeaux | Forum Informatique
ADSL |Actualité ADSL | e-commerce | Commande Au Volant
Creative Commons
Message Boards and Forums Directory