2012-07-14 3 views
0

Je crée un système de profil pour les utilisateurs sur un site Web. J'essaie de trouver le moyen le plus efficace et sécurisé pour obtenir et afficher leurs informations sur la page de profil. Les profils seront plutôt volumineux, contenant potentiellement des dizaines de champs de texte plus des images.Le moyen le plus efficace/sécurisé pour obtenir des informations sur l'utilisateur

Je ne veux pas vraiment interroger la base de données chaque fois que la page se charge parce que cela semble très inefficace. Et je pense que ce serait trop de données à stocker dans une session. Donc, ma question est: Quelles méthodes sont disponibles pour accomplir cela et que suggérez-vous?

Répondre

0

Bien que je ne sois pas d'accord avec votre point de vue (la requête db est efficace), vous pouvez utiliser la session pour stocker vos données. Démarrer une session au début de la page et utiliser la variable $ _SESSION pour stocker et utiliser les données comme vous le souhaitez.

Page 1 (login ou quelque chose)

// this starts the session 
session_start(); 

// this sets variables in the session 
$_SESSION['test']='testing'; 

Page 2 (page profil)

// this starts the session 
session_start(); 

// this echos variables in the session 
echo $_SESSION['test']; //output 'testing' 
+0

Cela fait partie de ma question. Est-il plus efficace d'interroger à chaque fois? Aussi, y a-t-il un inconvénient à stocker autant de données dans la session? Je cherche juste des opinions extérieures - je ne suis pas sûr de la méthode qui convient le mieux. – Zombie

+0

C'est à vous de décider. La variable $ _SESSION est considérée comme très sécurisée. La requête de base de données est efficace parce que c'est exactement son travail, la manipulation de petites/grandes quantités de données. – Ciro

+0

mieux faire une seule requête et stocker les données dans les variables $ _SESSION. vous aide à maintenir votre charge DB faible. aucun inconvénient là-bas ... pratique courante ... et (théoriquement) plus sûr que d'obtenir les données de la DB comme $ _SESSION est l'environnement interne de PHP, DB n'est pas ... – Michal

Questions connexes