cs_Aaron
Messages postés116Date d'inscriptionlundi 29 juillet 2002StatutMembreDernière intervention19 janvier 2009
-
19 juin 2007 à 04:58
cs_Aaron
Messages postés116Date d'inscriptionlundi 29 juillet 2002StatutMembreDernière intervention19 janvier 2009
-
20 juin 2007 à 00:44
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 :
J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 19 juin 2007 à 21:39
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...
setasan9
Messages postés98Date d'inscriptionlundi 14 juin 2004StatutMembreDernière intervention16 mars 2009 19 juin 2007 à 12:31
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.
cs_Aaron
Messages postés116Date d'inscriptionlundi 29 juillet 2002StatutMembreDernière intervention19 janvier 2009 19 juin 2007 à 15:10
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.
Vous n’avez pas trouvé la réponse que vous recherchez ?