Salut,
Je suis nouveau sur le forum (donc sur le site... ) et j'ai déjà un problème
Alors j'ai fait l'espace membre tout marche impeccable. Mais quand je veux dire "Salut membre" membre étant le login du connecter j'arrive pas. Je pense que la seule solution c'est de savoir l'id du membre pour faire la requête de donner le login. Mais justement je ne sais pas comment retrouver l'id du membre. Quelqu'un pourrait-il m'aider ???
Merci d'avance
@++
Salut,
Alors j'ai a moitié compris qu'il fallait faire un $_session_id... Mais moi pour exemple je voudrais que le login de l'utilisateur soit dit (par exemple salut nono42 ) et pour ça il faudrait lire dans la base de donnée le login de l'utilisateur.
Je ne pense pas que c'est en faisant $_session_id qu'on pourras trier les utilisateurs pour savoir son login.
Merci quand même Moogli
@++
Salut,
A oui, effectivement sa marche
Mais ceci n'était qu'un exemple...
Imaginons que il y a une rubrique % qui contient 0. Et que je veux faire : Vous êtes a 0% d'être banni. Ce 0 je vais le trouver dans la rubrique %. Oui, mais il faut pour ici savoir l'id de l'utilisateur pour pouvoir trié les %... Vous comprenez ??
Enfin merci d'avance (et aussi merci... )
@++
non mais je pense que :
- Tu devrais mettre l'id de l'utilisateur dans le tableau de session à la connexion puisque tu l'utilise
- Tu va un peut trop vite dans ton raisonnement sans regarder ce qui se passe au tour (si tu à créer un système de gestin du bannissement en fonction de l'id utilisateur, il te faut garder cet id quelque part, donc en session le reste c'est toi qui sait ;))
Salut,
Déjà on vas prendre un autre exemple, avec des points (donc score ). Je suis à 2 doigts d'y réussir! Je m'explique: Déjà x (le membre ) à 65 points, maintenant je vais vous montrer le code de sélection des points en fonction des membres:
Voyez dans la sélection du membre (code 1 ) il y a login='x'. J'ai voulu remplacer ce login='x' par un login='$_SESSION['login']' mais pas moyen... A chque fois y'avait une erreur sql. Je pense aussi que les requête SQL ne supporte pas les sessions. Mais aurait-il un moyen de "convertir" $_SESSION['login'] en format lisible par la base de donnée ?
Merci d'avance
@++
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
(Nono42) Il n'y a que les boulets qui disent que ça ne marche pas
Si ça ne marche pas, il y a un message d'erreur, s'il y a une message d'erreur, ce serait sympa de l'indiquer.
(Sammuel) $_SESSION est issue d'une source non-sûre, il faut donc sécuriser la donnée avec [fonction]mysql_real_escape[/function].
Vu que tu créé $_SESSION['login'] après avoir vérifié que le compte existe bien via une requête SQL, comment pourrait t'elle être non-sûre ?
$req = mysql_query("SELECT login FROM user WHERE login = '".mysql_real_escape($_POST['login'])."' AND password = '".mysql_real_escape($_POST['password'])."'");
$row = mysql_fetch_assoc($req);
// VERIFIE SI LE COMPTE EXISTE ...
// ET SIL EXISTE ON CREE UNE VARIABLE DE SESSION "LOGIN"
$_SESSION['login'] = $row['login'];
$row['login'] étant une valeur provenant de la BDD et vérifiée via la requête , comment pourrait t'elle être non-sûre ?
Au départ, j'ajouté des mysql_real_escape devant $_SESSION dans mes requêtes, mais après avoir posté un message sur ce forum, on m'a dit que ce n'était pas nécessaire ^^
Je crois qu'il dit ca parceque les variables globales de session peuvent etre creees depuis un autre site et injectees dans le tiens. Donc si tu fais une requete sans echapper cette variable, des personnes mal intentionnees pourrait, par exemple, utiliser ton login admin et modifier ce qu'ils veulent...
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Pas vraiment Keika. En fait c'est plus vicieux que ça.
Premièrement, le nom d'utilisateur peut être « Al'fred » :) Et il vaut mieux ne pas faire de supposition sur le nom d'utilisateur plutôt que de se retrouver avec des bogues étranges.
Deuxiement, Sammuel, tu te places dans le script de connexion. Ici il serait effectivement malheureux que la donnée dans le tableau de session ne soit pas fiable, puisque tu es sensé l'avoir validé. Le problème, c'est qu'à la visite suivante, tu ne vérifie pas le login, car le login est en session. À ce moment là, les données en session peuvent très bien avoir été alterées suivant le backend que tu utilises. Surtout si tu es sur un serveur mutualisé, où tu aurais un méchant voisin qui écrit dans ton fichier de session pour te faire une mauvaise blague.
Enfin bref, il faut faire les choses au bon endroit. Les données doivent être sécurisée avant d'être soumise, pas en prévision d'être soumises. Ce serait comme appliquer htmlentities sur une donnée insérée en base de données : c'est un non-sens.
Salut,
Oui moi être petit boulet
Mais heu... j'suis perdu là: le code que m'a donné Sammuel est correct, aucune erreur. En parlant d'erreur, le code que tu m'a donné LupusMic: l'erreur disait Fatal Error (sérieux ça )
Donc avec ce que je vient de lire le code de Samuel n'est pas sécurisé. Mais comment je le sécurise moi ??