Problème variables $_POST non accessible en mode "prerender".

ortolojf

WRInaute accro
Bonjour

A propos du problème soulevé par le mode "prerender" de Chrome ( et bientôt Firefox et Safari aussi ) :

Il est possible ( et semble -t-il désormais nécessaire pour un formulaire post ), de mettre les variables post en session quand elles sont alimentées ( (isset($_POST['var'])) et (!(empty($_POST['var'])) ), puis de les relire à partir des variables de session quand elles ne sont plus alimentées. (!isset($_POST['var']))

Il est parfaitement possible d'automatiser celà dans un script séparé, avec des variables globales.

A charge ( quand de nouvelles versions de PHP n'autoriseront plus les variables globales ), de mettre celà dans une fonction rendant une array de ces variables

A ce propos, c'est une véritable question pour moi :

Est-il question, parmi les développeurs du langage PHP, d'interdire dans un futur proche ou lointain, les variables globales ?

Merci beaucoup de vos réponses.

Respectueusement.

Jean François Ortolo
 

Blount

WRInaute impliqué
Je n'ai pas compris ton problème de "prerender".
Cette fonctionnalité permet de précharger une page (potentiellement visitée par l'utilisateur), mais pas des formulaires, ce serait complètement absurde.
Donc je ne vois pas l'intérêt des sessions (dans le cas d'un simple traitement).

Concernant les super global, il n'y a rien qui annonce leur suppression, et je doute fort que cela arrive un jour car il n'y a aucun intérêt technique.
 

ortolojf

WRInaute accro
Blount a dit:
Je n'ai pas compris ton problème de "prerender".
Cette fonctionnalité permet de précharger une page (potentiellement visitée par l'utilisateur), mais pas des formulaires, ce serait complètement absurde.
Donc je ne vois pas l'intérêt des sessions (dans le cas d'un simple traitement).

Concernant les super global, il n'y a rien qui annonce leur suppression, et je doute fort que cela arrive un jour car il n'y a aucun intérêt technique.


Hé hé...

Quand il y a pas de solution y a pas de problèmes...

Et quand il y a un problème on ne s'en aperçoit pas...

Quand je pense que l'on vit depuis.. Milton Friedman ( l'Economiste prix Nobel ), sur la Théorie de Friedman, théorie macro-économique purement monétariste, qui a substitué l'apparence ( = L'Argent ) au réel ( La production de biens matériels réels ), en provoquant la Dette tout en régulant l'Inflation, et que le Monde entier vit actuellement sur le tonneau de poudre allumé de la Dette, je ne m'étonne plus de rien. ;)

Bien à vous.
 

indigene

WRInaute accro
Je trouve ça pas plus stupide que d'utiliser chrome ou Bing
Il y a même toujours des gens qui utilisent des mac pour autre chose que pour du graphisme.
Il parait aussi que certaines personnes surfent sur le net avec des téléphones de poche
 

ortolojf

WRInaute accro
Blount a dit:
Je n'ai pas compris ton problème de "prerender".
Cette fonctionnalité permet de précharger une page (potentiellement visitée par l'utilisateur), mais pas des formulaires, ce serait complètement absurde.
Donc je ne vois pas l'intérêt des sessions (dans le cas d'un simple traitement).

Concernant les super global, il n'y a rien qui annonce leur suppression, et je doute fort que cela arrive un jour car il n'y a aucun intérêt technique.


Bonjour Monsieur

J'alimente une variable de session avec le résultat d 'un captcha. Lors *d'un seul* chargement théorique, cette variable ne devrait être affectée que une fois ( à la fin du script ).

Lors de ce seul chargement du formulaire, cette variable est alimentée au moins deux fois... Et à l'arrivée j'obtiens une variable de session qui n'est pas égale à la variable $_POST de réponse ( en début de script, avant l'affectation de la variable de session ).

La variable $_POST est correcte, la variable de session ne l'est pas.

La variable de session ne peut avoir changé entre-temps, *que* si le script a été *chargé* en deux fois ( donc en mode "prerender", puis en mode "visible".

Ce que je fais : Je met en session ( c'est la poire pour la soif, mais pas nécessaire ) la variable $_POST quand elle est affectée et non vide, et je n'affecte plus la variable de session ( en fin de script ), que dans ce cas ( c'est-à-dire semble-t-il en mode "visible " ).

A ce moment-là, la variable de session n'est alimentée qu'une seule fois et là miracle : Cà marche.

Merci au W3C de ne pas changer ses normes "prerender", sinon les webmasters n'auront plus qu'à aller se rhabiller.

Respectueusement.
 

Discussions similaires

Haut