PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 06-05-2010 09:37:45

theavengers
Membre
Inscription : 13-10-2009
Messages : 81

[Résolu] Passer une variable, session ou get ?

Bonjour à tous,

je suis entrain de créer plusieurs petit formulaire, mais avec le nom de la personne qui poste que je souhaite garder, pour l'insérer dans les prochains formulaires.

Par exemple :

1er formulaire :
Liste déroulante : toto1, toto2, toto3
On cliques sur envoyer et on arrive sur le second qui affiche "Bonjour toto2" remplissez le formulaire :

Et ce deuxième formulaire insère des infos dans une bdd avec le nom toto2.

Le mieux, c'est une session ou d'utiliser simplet un get pour récupérer le nom ? (En sachant que la personne ne doit pas se retrouver déconnecté, même si elle reste 2 heures à la machine à café smile )

Hors ligne

#2 06-05-2010 09:42:11

Alnoss
Modérateur absent
Lieu : 06 - PACA
Inscription : 11-05-2009
Messages : 541
Site Web

Re : [Résolu] Passer une variable, session ou get ?

avantage du $_GET : passe par l'adresse, donc aucun risque de session expirée
inconvénient du $_GET : passe par l'adresse, donc facile à "modifier" par un petit rigolo

avantage de la session : sécurisé, et durable (pour peu qu'on ait défini un timeout expire session bien long)
inconvénient : il faut bien configurer ce timout

Et vu que tu passes par un 1er form.... pourquoi pas un input hidden en méthode POST ??? hihihi wink

(par contre, je ne comprends pas : l'utilisateur peut choisir son identité ???? via le menu déroulant ... quel est l'intérêt ??)


MERCI de lire le mode d'emploi avant de poster !!

Hors ligne

#3 06-05-2010 10:03:55

theavengers
Membre
Inscription : 13-10-2009
Messages : 81

Re : [Résolu] Passer une variable, session ou get ?

Merci pour ta réponse, je vais me noter les différences dans un coin.

Hum, l'input hidden, très bonne idée, je pense que je vais laissé tombé les sessions car pas de risques de hack.

En fait, le groupe d'utilisateur est déja connu, il sera composé de 5 personnes, c'est juste pour éviter qu'ils aient à retaper leurs pseudos. Et ça va me permettre de savoir qui écrit quoi et de faire des stats. Ce n'est pas pour une appli ouverte au web.

Encore merci.

Hors ligne

#4 06-05-2010 10:42:43

Alnoss
Modérateur absent
Lieu : 06 - PACA
Inscription : 11-05-2009
Messages : 541
Site Web

Re : [Résolu] Passer une variable, session ou get ?

dans ce cas, tu pourrais presque tenté de passer le paramètre utilisateur en cookie ... (si chaque user a/utilise sa propre machine) Ça évitera la petite étape du choix

PS : ou alors, tu passes par un form d'identification normal, mais vu que le pc retiendra l'id dans l'input, ça restera simple


MERCI de lire le mode d'emploi avant de poster !!

Hors ligne

#5 06-05-2010 14:49:36

theavengers
Membre
Inscription : 13-10-2009
Messages : 81

Re : [Résolu] Passer une variable, session ou get ?

Je teste avec un hidden, ça limite pas mal, surtout que je suis obligé de le rappeller régulierement... je vais voir avec un cookie, jamais utilisé jusqu'a présent.

Hors ligne

#6 06-05-2010 22:00:35

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : [Résolu] Passer une variable, session ou get ?

Bonsoir,

La solution la plus simple et la plus performante c'est d'enregistrer l'id du connecté dans la variable de session. Système que tu peux étendre d'une manière localisée pour résoudre ton problème. Ca oblige aussi à utiliser une session. Le cookie c'est une bonne idée aussi, mais moi perso suis pas trop partisan de ce genre de méthode car désactivable par l'utilisateur (et beaucoup plus légitime et rationnel que de désactiver javascript^^).

Dernière modification par Jc (06-05-2010 22:02:32)


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#7 10-05-2010 11:03:22

theavengers
Membre
Inscription : 13-10-2009
Messages : 81

Re : [Résolu] Passer une variable, session ou get ?

Re :Bon, finalement, ça devenait trop contraignant d'utiliser un hidden pour faire passer ma variable, je suis repassé aux sessions.

Seulement je rencontre quelques difficultés du à un manque de connaissance.

J'en suis la :
1/ formulaire :
Identification simple de l'opérateur, j'enregistre la variable operateur en session
On valide

2 / formulaire :
J'affiche le nom de l'opérateur sans soucis
Choix du département
On valide
affichage de la liste > sélection d'une entrée >un nouveau formulaire au travers duquel on peut compléter l'entrée.

Jusque la tout va bien. Sauf qu'une fois le dernier formulaire complété, il faut repartir à la liste des départements, et sélectionner le département à nouveau (opération qui va vite devenir contraignante).

Donc, ni une ni deux, je refais :


1/ formulaire :
Identification simple de l'opérateur, on stocke en session
On valide

2 / formulaire :
J'affiche le nom de l'opérateur sans soucis

Choix du département je le stocke dans une session

Affichage de la liste et j'ai bien le nom du departement qui s'affiche avec un echo, mais j'ai perdu le nom de l'opérateur ...
Donc, est que c'est possible de stocker differente varaible en session à differentes étapes ? Ou alors je passe le département en cookie ?

Dernière modification par theavengers (10-05-2010 11:08:25)

Hors ligne

#8 10-05-2010 11:13:59

theavengers
Membre
Inscription : 13-10-2009
Messages : 81

Re : [Résolu] Passer une variable, session ou get ?

Non, finalement, c'est bon, j'avais une ligne qui se balladait $_SESSION['operateur'] = $_POST['operateur']; en doublons....

Hors ligne

Pied de page des forums