April 8, 200521 yr bonjour ! je débute dans les sessions et je me pose plusioeurs questions : 1 - faut-il proteger le dossier http://login.free.fr/sessions/ ou pas car il contient les sessions? et si on le protège avec un .htaccess on ne risque pas d'avoir des pb d'accès des scripts de sessions? 2 - l'id de session est générer de maniere aléatoire ou en fonction de l'ip ou d'autre chose encore? car j'ai toujours le meme, que ce soit sur free ou en local (pas les memes que les deux mais le meme respectivement...) comment en générer un aléatoirement si ce n'est pas le cas? merci à tous !
April 8, 200521 yr 1- Non pas besoin les fichiers du repertoires sont inexploitables 2- Chaque utilisateur a un SID propre a lui même et qui change avec la session. Il est passé soit par url, soit par cookie (le plus souvent par cookie)
April 8, 200521 yr Author ok, l'envoi par cookie se fait de manièere automatique au navigateur de tt façon? sinon j'ai un petit souci, je voudrai qu'un utilisateur puisse éditer ses données qui sont enregistrées dans une table. ici le mot de passe est "aaaa" donc la requete cherche : <? session_start(); ?> <title>Modifications de vos données personnelles (Tiplus)</title> <p>Modifications de vos données personnelles : <br> <? include("../install_config.php"); //on se connecte à la base de donnée $db = mysql_connect ($serveur_sql, $user_sql, $password_sql) or die ("Erreur de connexion"); //on sélectionne vôtre base mysql_select_db($base_sql, $db) or die ("Erreur de connexion à la base"); if(!session_is_registered("nom_session")) { echo "Merci de cliquer ici pour vous authentifier."; exit; } //authentification OK $req = mysql_query("SELECT password from $table_sql where login ='aaaa' "); //on ressort la requête dans un tableau $result = mysql_fetch_array($req); $password_form = $result[password]; ?> le pb est qu'en suite le password doit s'afficher dans le formulaire : <input name="password" type="text" value="<? echo $password_form; ?>"> mais il ne s'affiche pas, quelqu'un a une idée? mon fichier config est simple : $user_sql= "blabla"; ... donc je ne comprends pas trop !
April 9, 200521 yr tu es sur qu'on peut mettre une valeur par defaut a un input type=password ? Edited April 9, 200521 yr by k-o-x
April 9, 200521 yr tu es sur qu'on peut mettre une valeur par defaut a un input type=password ? Oui. Sinon tu as essayé de placer ton <? echo $password_form; ?> ailleur que dans ton champ de password, voir si c'est la variable qui est vide ou le champ qui refuse la valeur par défaut ? Ca a toujours marché chez moi, y a pas de raison..
April 9, 200521 yr Author alors oui deja car mon champ n'est pas type=password mais type=text si tu regardes bien k-o-x ! ensuite je pense que cela vient du fait qu'il faut faire une boucle php pour que toute la table soit parcourue non? ps : quelqu'un sait pourquoi sur EASY PHP 1.7 le test d'une variable ne marche pas : if(!$var) ... ben sur la 1.6 niquel et sur la 1.7 marche pas !
April 9, 200521 yr testes $req=mysql_query("SELECT password from `".$table_sql."` where login ='aaaa' ")or die(@mysql_error()); $result=mysql_fetch_array($req); /*S'il y a un soucis de compatibilité avec le reste du script *Vire le extract($result) et remplace les variables issues du extract *par leur array $result[] *exemple : $password -> $result['password'] */ extract($result); if(!@mysql_num_rows($req)) {die('Aucune entrée trouvé');} echo '<input type="text" name="password" value="'.$password.'" />'; //... ?>
April 9, 200521 yr Author c'est bon j'ai trouvé cela venait d'une erreur de concaténation ! merci _graal
April 10, 200521 yr alors oui deja car mon champ n'est pas type=password mais type=text si tu regardes bien k-o-x ! oups désolé j'ai lu trop vite...
Archived
This topic is now archived and is closed to further replies.