IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Connexion sur un site avec BDD mysql


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 20
    Points : 9
    Points
    9
    Par défaut Connexion sur un site avec BDD mysql
    Bonjour

    voila je voulais savoir si la façon a laquelle je me connecte sur mon site est la bonne:

    en fait après la connexion a la bdd, je fais un
    select from where pseudo=$pseudo and password=$password

    un cookie se créé si et seulement si dans les champs on a mis des valeurs qui existent dans ma table,

    en fait je voulais simplement savoir si ma façon de faire est correcte ou si je suis a côté de la plaque ?

    sinon que dois-je modifier svp ?

    autre question :

    si la connexion est bonne, donc si le mot de passe et le pseudo sont dans la table, je fais un alert("Vous êtes désormais connecté !");

    si je me connecte en tant que identifiant : XXXX MDP : xxxx
    Comment faire pour que l'alert devienne : Vous êtes désormais connecté XXXX ! svp ?

    Merci d'avance

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 228
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 228
    Points : 8 487
    Points
    8 487
    Billets dans le blog
    17
    Par défaut
    voila je voulais savoir si la façon a laquelle je me connecte sur mon site est la bonne:

    en fait après la connexion a la bdd, je fais un
    select from where pseudo=$pseudo and password=$password

    un cookie se créé si et seulement si dans les champs on a mis des valeurs qui existent dans ma table,

    en fait je voulais simplement savoir si ma façon de faire est correcte ou si je suis a côté de la plaque ?
    Je ne vois rien à redire à ça.

    si la connexion est bonne, donc si le mot de passe et le pseudo sont dans la table, je fais un alert("Vous êtes désormais connecté !");

    si je me connecte en tant que identifiant : XXXX MDP : xxxx
    Comment faire pour que l'alert devienne : Vous êtes désormais connecté XXXX ! svp ?
    Il faut faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript"><![CDATA[
        alert("Salut <?php echo $pseudo ?> !") ;
    ]]></script>
    Attention, ici si $pseudo contient un " ton JS sera en erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript"><![CDATA[
        alert("Salut <?php echo str_replace('"', '\"', $pseudo) ?> !") ;
    ]]></script>

  3. #3
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 387
    Points
    9 387
    Par défaut
    Au cas où cela ne soit pas fait : il faut protéger les variables que l'on insère dans les requêtes.
    Quelques pistes :
    - mysql : mysql_real_escape_string()
    - mysqli : mysqli_real_escape_string() OU mysqli::escape_string()
    - PDO => requêtes préparées

    Un cookie ? Pourquoi ne pas utiliser les sessions ?

    Afficher une variable PHP dans du javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert("Vous êtes désormais connecté <?php echo $pseudo; ?>!");

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 228
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 228
    Points : 8 487
    Points
    8 487
    Billets dans le blog
    17
    Par défaut
    Un cookie ? Pourquoi ne pas utiliser les sessions ?
    +1

    A la rigueur le cookie peut servir pour un auto-connect, pour le reste les sessions sont idéales.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 20
    Points : 9
    Points
    9
    Par défaut
    Bonsoir merci pour les réponses !

    Pourquoi les cookies plutôt que les sessions ?
    Ben franchement j'en ai aucune idée je me sens surement plus a l'aise avec les cookies, c'est réellement mieux les sessions ?

    EDIT : j'ai donc fait comme vous m'aviez dit c'est impeccable ça marche très bien, cependant comment on peut faire pour que au dessus du bouton déconnexion le nom de l'utilisateur s'affiche a nouveau et sur toutes les pages svp ?

    Merci

  6. #6
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 228
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 228
    Points : 8 487
    Points
    8 487
    Billets dans le blog
    17
    Par défaut
    Il faut mettre le nom en session.
    Ensuite tu pourras l'utiliser partout où tu veux.

    Doc sur les sessions : http://www.php.net/manual/fr/book.session.php

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 20
    Points : 9
    Points
    9
    Par défaut
    Ok merci

    mais par rapport a un cookie ou on détermine la durée, la session n'est elle pas limitée ?

  8. #8
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 387
    Points
    9 387
    Par défaut
    La session utilise un cookie pour identifier le navigateur.
    Mais les données sont stockées côté serveur.
    La session est détruite lors du timeout configuré côté serveur (voir dans le php.ini la durée max des sessions) ou bien lors de la destruction du cookie (durée aussi configurable dans le php.ini).

Discussions similaires

  1. Connexion sur un site avec Java
    Par Freddo31 dans le forum API standards et tierces
    Réponses: 16
    Dernier message: 07/03/2011, 17h56
  2. Réponses: 13
    Dernier message: 11/10/2007, 09h46
  3. [MySQL] Mise a jour Site avec Bdd + Php
    Par Francois D dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 22/05/2007, 22h37
  4. Choix d'un langage pour application avec bdd mysql
    Par tonio-lille dans le forum Windows
    Réponses: 5
    Dernier message: 09/11/2006, 17h01
  5. connection avec BDD MySQL
    Par devlopassion dans le forum C++Builder
    Réponses: 4
    Dernier message: 30/09/2006, 14h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo