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

PHP & Base de données Discussion :

connexion à un espace membre


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut connexion à un espace membre
    Bonjour,

    J'ai un problème et j'arrive désespérément pas à voir d'où viens l'erreur. Surtout que je l'ai repris sur un site et que jusqu'a présent il fonctionnait parfaitement.
    Si quelqu'un voudrai bien m'aidé à trouver l'erreur ça m'aiderai.

    Le code est ici: http://arthezius.free.fr/codeerreur.txt

    Merci d'avance.

  2. #2
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Et quel était ton problème? un problème de connexion, c'est vague!!!

    As tu un message d'erreur? qu'est ce qui ne fonctionne plus maintenant? etc.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Ok, dans ma précipitation de réclamer de l'aide, j'ai oublié d'en expliqué la raison...
    Pauvre de moi...

    Donc, en fait il d'agit d'un formulaire de connexion. Il y a un lien pour s'inscrire en bas. On s'inscrit donc. Ça marche jusque là. Le problème est pour la connection ensuite. J'ai créé un premier compte et je peux me connecter sans problème. Le problème est pour le compte suivant et tout les autres en fait.
    Dans mon code (que j'ai repris d'un site) il y a une condition pour si la connection échoue avec un message d'erreur. C'est celui-ci qui apparaît ensuite.

    Merci d'avance et désolé pour ces cafouillages...

  4. #4
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    PHP te donne t'il une erreur?

    Dans l'exemple d'origine... la table se nomme "membre" dans ta requête tu t'adresses à la table "membres".

    Je crois aussi qu'avant d'explorer la galaxie en PHP va falloir explorer le HTML... ton code est une catastrophe qui risque de te poser beaucoup de problème par la suite...

    ATTENTION : La fonction session_start() doit être la première ligne d'un script.

    tiens moi au courant.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Oui membre est devenu membres c'est normal.

    Comment ça une catastrophe ?
    La seule chose qui vas pas est la réponse qu'il me fait à la connexion pour le deuxième compte. Je t'invite à tester mon code sur mon site via le liens de mon message précédent.

    En d'autre terme, au lieu de me connecté, il passe sur cette parti du code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    else { 
             $erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
          }
    Je suis preneur de tout conseil concernant mon code. Je suis encore débutant en PHP. Je commence à avoir quelques connaissance et je fait ce que je peux à partir de ce que je sais. Je ne cherche qu'a faire au mieux. Si y'a des choses qu'y ne vont pas, je suis preneur de tout conseil.

  6. #6
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    C'est une excellente philosophie! Nous sommes tous passés par là!

    Concernant ton code... Le w3c peut t'aider à optimiser ton code HTML.
    Voici pour ta page

    Ensuite, ton code fonctionne ici... j'arrive à cette erreur :
    Erreur SQL !
    SELECT * FROM inventaire WHERE login="sdq"
    Table 'test.inventaire' doesn't exist

    Il passe donc bien dans la première condition... ce qui m'amène à dire que le message que tu reçois est bien à cause du nombre de résultat que mysql te renvoie... vérifie que tu n'es pas 2 fois le même membre dans ta table "membres".
    Va aussi falloir gérer ce cas de figure!!!

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    En fait j'ai deux table.

    La première concerne les données concernant le membre.
    La deuxième, sont inventaire.

    Sinon ton problème c'était normale. Un petite truc qui allait pas dans mes tables. Rééssai si tu veux. Ça devrai allé.

    Ce qui je comprends pas, c'est que ça marche sans problème pour mon premier compte. Je viens de refaire l'essai. J'ai même vidé mes tables et me suis rééincrit. Ça persisté dès que je passe la première ligne de ma table.
    Je vais essayé de mettre autre chose sur cette ligne.

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Je crois avoir trouvé mon erreur mais je ne la comprends pas pour autant en soit. Si quelqu'un pourrai m'expliquer.

    Vous retrouverez mon code complet sur mon lien un peu plus haut.

    Le passage précis est celui-ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql_1 = 'SELECT * FROM membres WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"'; 
          $req_1 = mysql_query($sql_1) or die('Erreur SQL !<br />'.$sql_1.'<br />'.mysql_error()); 
          $data_1 = mysql_fetch_array($req_1);
    Reprenant le code d'origne, je me suis aperçu que je devais le laisser de cet manière pour qu'il fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql_1 = 'SELECT count(*) FROM membres WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"'; 
          $req_1 = mysql_query($sql_1) or die('Erreur SQL !<br />'.$sql_1.'<br />'.mysql_error()); 
          $data_1 = mysql_fetch_array($req_1);
    C'est la fonction count(*) qui posais problème quand je l'avais enlevé. Toutefois celle-ci m'empêche de récupérer l'ensemble de mes données de ma table.
    Si quelqu'un peu m'éclairer... Je l'en remercie par avance...

  9. #9
    Membre confirmé Avatar de defcon_suny
    Homme Profil pro
    Non pas trop...
    Inscrit en
    Décembre 2006
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Non pas trop...
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 441
    Points : 547
    Points
    547
    Par défaut
    Salut!

    Bien joué! t'as trouvé

    Le count de ta requête te renvoie le nombre de résultat trouvé.
    Tu utilises ce résultat dans les conditions if
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if ($data_1[0] == 1) { 
      //code
    }
    Pour obtenir les données de l'utilisateur tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     // on teste si une entrée de la base contient ce couple login / pass 
          	$sql_1 = 'SELECT * FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"'; 
          	$req_1 = mysql_query($sql_1) or die('Erreur SQL !<br />'.$sql_1.'<br />'.mysql_error()); 
          	$data_1 = mysql_fetch_array($req_1);
           $nbr_resultat = mysql_num_rows($req_1); // retourne le nombre de ligne du résultat SQL
     
          	mysql_free_result($req_1); 
     
          // si on obtient une réponse, alors l'utilisateur est un membre 
          if ($nbr_resultat == 1) { 
    }
    ++

Discussions similaires

  1. Connexion impossible espace membre
    Par torg33 dans le forum Langage
    Réponses: 2
    Dernier message: 24/08/2010, 13h50
  2. [MySQL] Connexion espace membre
    Par marygil dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 20/10/2009, 09h25
  3. Connexion à l'espace membre
    Par ploufleouf74 dans le forum Langage
    Réponses: 5
    Dernier message: 20/07/2009, 16h02
  4. [MySQL] Problème Connexion Espace Membres
    Par Luisito31 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 21/02/2009, 14h21
  5. [MySQL] Script de connexion (espace membre)
    Par razorlok dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 03/06/2008, 11h41

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