Var globales à OFF - incertitudes
lagassat
Messages postés
527
Statut
Membre
-
lagassat Messages postés 527 Statut Membre -
lagassat Messages postés 527 Statut Membre -
Salut à tous,
Ayant ete habitue à prog avec les variables globales, je suis un peu perdu depuis qu'elles sont passees à OFF avec les dernieres moututres de php...
Je recupere un variable, dans mon script php, provenant d'un formulaire html. Comme il y a transmission, je suppose donc que je dois utiliser un POST (ou un GET mais je prefere un POST ;-) ).
Apres je communique avec ma bdd, cela suppose -t-il que je modifie aussi mes variables qui me servent à me connecter (login, etc.) de la meme facon ?
Et de meme pour les variables que je transmet à travers mes requetes ?
Par contre, il ne me semble pas utille de modifier les variables qui ne me servent qu'a stocker des chaines de caracteres pour les tronquer... Ai-je raison ?
Et ou dois-je declarer ma variable avec une "superglobale" ? Avant d'affecter la valeur à ma variable que je vais transmettre ?
Ou c'est l'inverse ?
Merci d'avance
Ciao
"2 choses sont infinies : l'univers et la betise humaine
bien que en ce qui concerne la 1ere je n'ai pas encore de certitude absolue"
Ayant ete habitue à prog avec les variables globales, je suis un peu perdu depuis qu'elles sont passees à OFF avec les dernieres moututres de php...
Je recupere un variable, dans mon script php, provenant d'un formulaire html. Comme il y a transmission, je suppose donc que je dois utiliser un POST (ou un GET mais je prefere un POST ;-) ).
$nom = $_POST['nom'];
Apres je communique avec ma bdd, cela suppose -t-il que je modifie aussi mes variables qui me servent à me connecter (login, etc.) de la meme facon ?
Et de meme pour les variables que je transmet à travers mes requetes ?
Par contre, il ne me semble pas utille de modifier les variables qui ne me servent qu'a stocker des chaines de caracteres pour les tronquer... Ai-je raison ?
Et ou dois-je declarer ma variable avec une "superglobale" ? Avant d'affecter la valeur à ma variable que je vais transmettre ?
ex : $Mot="test"; $MOt = $_POST['Mot'];
Ou c'est l'inverse ?
Merci d'avance
Ciao
"2 choses sont infinies : l'univers et la betise humaine
bien que en ce qui concerne la 1ere je n'ai pas encore de certitude absolue"
A voir également:
- Var globales à OFF - incertitudes
- Logo on off - Forum Facebook
- Switch off - Télécharger - Divers Utilitaires
- On off symbole - Forum Word
- @Echo off ✓ - Forum Programmation
- Que veut dire le bouton off - Forum PC portable
3 réponses
bonjour,
up
"2 choses sont infinies : l\'univers et la betise humaine
bien que en ce qui concerne la 1ere je n\'ai pas encore de certitude absolue"
up
"2 choses sont infinies : l\'univers et la betise humaine
bien que en ce qui concerne la 1ere je n\'ai pas encore de certitude absolue"
Ben les super globales ne concernent que les variables transmises par POST, GET, les COOKIEs, et les variables d'environnement (ENV, SERVER...).
Tes variables personnelles, appelées et manipulées dans ton script n'appartiennent pas à ces catégories et n'existent donc pas dans les tableaux POST, ou GET ou autres.
Il n'y a aucune utilité de déclarer tes variables en superglobales en les créant artificiellement dans ces tableaux.
Par contre si elles doivent suivre d'un script à un autre ce ne peut être que par ces mécanismes.
$Mot crée dans un script deviendra $_COOKIE['Mot'] dans le script suivant si tu l'as stockée dans un cookie, ou $_GET['Mot'] si tu l'as transmise par l'URL.
Tes variables de connexion, si elles sont le résultat d'un formulaire sont aussi affectées par l'incorporation dans GET ou POST. Si elles sont le résultat d'un
Lorsque tu réalises une réquête avec des paramètres obtenus d'un formulaire là aussi il faut passer par les superglobales, mais là fait gaffe au simple quote ', il vaut mieux faire:
Est-ce que j'ai répondu à ta question?
Eric.
Tes variables personnelles, appelées et manipulées dans ton script n'appartiennent pas à ces catégories et n'existent donc pas dans les tableaux POST, ou GET ou autres.
Il n'y a aucune utilité de déclarer tes variables en superglobales en les créant artificiellement dans ces tableaux.
Par contre si elles doivent suivre d'un script à un autre ce ne peut être que par ces mécanismes.
$Mot crée dans un script deviendra $_COOKIE['Mot'] dans le script suivant si tu l'as stockée dans un cookie, ou $_GET['Mot'] si tu l'as transmise par l'URL.
Tes variables de connexion, si elles sont le résultat d'un formulaire sont aussi affectées par l'incorporation dans GET ou POST. Si elles sont le résultat d'un
definequelque part dans ton script (ou d'une déclaration $login="..."), elles ne sont pas affectées.
Lorsque tu réalises une réquête avec des paramètres obtenus d'un formulaire là aussi il faut passer par les superglobales, mais là fait gaffe au simple quote ', il vaut mieux faire:
." WHERE id=".$_POST['identité']."\"";que
." WHERE id=$_POST['identité']\"";parce que l'imbrication des deux niveaux de quotes marche pas toujours très bien.
Est-ce que j'ai répondu à ta question?
Eric.
ok merci pour les infos, ca m'a conforte dans ma "comprehension" des explications donnees sur le site de php... Avec l'anglais je me mefie qund meme un peu, une mauvaise interpretation est vite arrivee.
"2 choses sont infinies : l'univers et la betise humaine
bien que en ce qui concerne la 1ere je n'ai pas encore de certitude absolue"
"2 choses sont infinies : l'univers et la betise humaine
bien que en ce qui concerne la 1ere je n'ai pas encore de certitude absolue"