begin process at 2012 05 31 19:22:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Variables de session


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Variables de session

mardi 19 juin 2007 à 04:58:57 | Variables de session

Aaron

Membre Club
Bonjour,

Je récupère des valeurs d'une table d'une base de données de la façon suivante :
 
$req = mysql_query("SELECT * FROM Users WHERE Login = '$iden' AND $Password = '$pwd'");
$data = mysql_fetch_assoc($req);


J'aurais aimé savoir s'il existe une fonction, ou à défaut une méthode pour créer des variables de session sans avoir à écrire 50 fois quasiment la même ligne :

$_SESSION['login'] = $data['Login'];
$_SESSION['pwd'] = $data['Password'];
$_SESSION['or'] = $data['or'];

...
$_SESSION['var50'] = $data['var50'];

J'ai entendu parler d'une fonction LIST, mais je ne sais pas comment l'utiliser ni même si elle serait utile dans ce cas de figure.

Merci d'avance pour votre aide.

mardi 19 juin 2007 à 08:44:52 | Re : Variables de session

J_G

Salut,


tu cherches certainement après "foreach" :
foreach ( $data as $clef => $valeur ) $_SESSION[$clef] = $valeur;

Mais je ne trouve pas très "propre" de stocker autant d'info en session... M'enfin, c'est toi qui voit.

A+
mardi 19 juin 2007 à 12:31:13 | Re : Variables de session

setasan9

Je ne suis pas sur de comprendre le soucis, mais peut etre que si tu mettez toutes tes variables de session dans uns seule et unique  page et que, quand tu en a besoin, au lieu de tout retaper tu appels ta page qui contient tous les champs par une inlusion.

Par exemple :

session_variables.php :
$_SESSION['login'] = $data['Login'];
$_SESSION['pwd'] = $data['Password'];
$_SESSION['or'] = $data['or'];

...
$_SESSION['var50'] = $data['var50'];

pages_ou _tu_as_besoin_de_ces_variables.php :
include 'chemin/session_variables.php';

Encors une fois je ne suis pas sur d'avoir bien compris ton probleme, mais si c'est bien ca alors tant mieux ^^
mardi 19 juin 2007 à 15:10:20 | Re : Variables de session

Aaron

Membre Club
Bonjour,

Merci à vous deux d'avoir répondu.


@J_G : Mieux vaut t-il faire une connexion à la base de données à chaque fois plutôt que d'avoir une 20e de variables de session?

@Setasan9 : Il suffit de faire session_start(); et d'otenir les variables via $_SESSION['quelquechose']. Une fois les variables enregistrées, plus besoin de les définir... Pas besoin de passer par un fichier intermédiaire je pense.
mardi 19 juin 2007 à 21:39:53 | Re : Variables de session

J_G

Réponse acceptée !
Salut,

"
Mieux vaut t-il faire une connexion à la base de données à chaque fois plutôt que d'avoir une 20e de variables de session?
"

Franchement, je pense qu'il vaut mieux interroger ta base ! Ben oui, sommes-toutes, une base de données est faite pour ça.... non ?
Mais pour être plus clair :
Tes variables de session sont enregistrées dans des fichiers textes. Pour les écrire, PHP doit "linéariser" les variables (cf la fonction serialize) + ouvrir le fichier de l'utilisateur actuellement identifié + écrire dedans. De plus, tu auras un fichier texte par utilisateur... Si 1000 utilisateurs sont connectés, 1000 fichiers. Pour finir, régulièrement PHP vérifie la date de péremption des fichiers de sessions, afin de les détruire.

Pour la base de données : les données sont dans un et un seul fichier (par base... enfin ça dépend du moteur). Elles y sont inscrites de façon optimale (binaire, compressé). Ces fichiers contiennent une mécanique d'indexation pour trouver rapidement les données. Et pour finir, d'outils pour retrouver ces données, les stocker en mémoire (hors de la mémoire de PHP).

Bref, une base de données est exactement faite pour supporter des interrogations à outrance ! Les sessions ne sont là que pour conserver des données périssables et contextuelles à un utilisateur précis...


J'espère avoir répondu à ta question

A+
mercredi 20 juin 2007 à 00:44:10 | Re : Variables de session

Aaron

Membre Club
Hello,

Mon herbegeur (OVH) accepte 10 connexions simultannées à la base de données. Cela suffit-il pour l'interroger à outrance?

En tout cas, merci pour tes réponses.


Cette discussion est classée dans : variables, req, login, data, session


Répondre à ce message

Sujets en rapport avec ce message

affichage de champs [ par chris tuckers ] Bonjour, alors, c'est une question top urgente et je bloque dessus depuis ce matin. Dans une page, je désirais voir renseigner deux tables. Voici lapr Probleme de requete mysql [ par momoxe ] Bonjour, j'ai fait un code en php pour mon site web et il ne fonctionne pas.A chaque fois, mon serveur me renvoie "parse error on line 5, ce qui corre Encore et toujours les sessions [ par chris tuckers ] Hi !J'ai encore et toujours un problemes de session.Voici les données que je mets en session :if ($loginOK) {$_SESSION['id_admin'] = $data['id_admin'] [php] petit probleme !! [ par dekovince ] bonjour a tous !!alors voila, je m explique :Un formulaire, une basse de donnee avec une table, et dans cette table un champs qui se nomme compteur !! Passer de variable avec HEADER() [ par chapata ] Hello ,voilà, j'ai un fichier "secure.php" qui vérifie s'il y a session ouverte sur le login, sinon redirige vers la page de login.php<b actualisation de session [ par christuckers ] Salut les CSistes !!J'ai une question concernant les sessions, dont je n'ai malheureusement pas trouvé la réponse.J'ai réalisé un site avec une frame Besoin aide sur pseudo frame [ par neo_tsubasa ] Bonjour, Je debute alors c'est surment une question con mais je bloque quand même. Je voudrais creer des pseudo frames, donc j'ai suivi un tuto et de Php session [ par bm1982 ] Bonjour à tous : Je suis un debutant en php qui veut maintenant utliser les sessions. En effet , j ai une page PHP pour que mes users puissent saisir Pb perte de login [ par AlexTheDoctor ] Bonjour à tous!! Voilà je débute en php, et j'ai un petit soucis. J'ai 2 pages "login.php" et "index.php" (qui comprend un menu à droite). Je rentre Eviter des doublons d'un rand sur une requête [ par SnapFAB ] Bonjour à tous, Après beaucoup de recherche je n'ai pas trouvé de solution à mon problème. C'est pour cela que je me permets d'écrire sur ce forum à


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales