Partage
  • Partager sur Facebook
  • Partager sur Twitter

Conditionlors de la selection de la table

    18 novembre 2011 à 22:41:54

    Bonsoir tout le monde,

    Voila mon problème, lors de l'inscription sur mons site, l'internaute s'inscrit sur tel ou tel table en fonction de son statut (un intervenant s'inscrit dans la table intervenant, un étudiant dans la table étudiant, etc...)

    Mais lorsque l'internaute souhaite se connecter je ne sais pas s'il est intervenant ou étudiant. bien entendu je peux effectuer plusieurs requête en fonction du nombre de table mais cela pose problème sur l'optimisation des ressources. je cherche donc à éffectuer cela en une seule requete.

    ex :
    select * from 
    if(
        (select * from intervenant where email = toto@gmail.com) not null
    ) 
    else if (
        (select * from etudiant where email = toto@gmail.com) not null
    )
    


    J'attends vos réponses :)
    • Partager sur Facebook
    • Partager sur Twitter
      19 novembre 2011 à 2:01:28

      ton imbrication de requete n'est pas bonne. il faudrait plutot faire
      select (select password from intervenant where email = 'toto@gmail.com') as intervenant,  (select password from etudiant where email = 'toto@gmail.com)' as etudiant  from intervenant, etudiant
      

      enusite après exécution de la requete tu teste if(!empty($donnees['intervenant'] et if(!empty($donnees['etudiant'] puis si une des deux valeur existe tu l'as compare aux mot de passe entré par l'user. Dans ton cas il faut biensur qu'un étudiant et un intervenant ne puisse pas avoir le même email sinon le traitement sera diférent.
      est ce qu'il ne serait pas plus simple de mettre une listbox dans le formulaire de connexion qui permetrait a l'user de dire si il est intervenant ou étudiant et ensuite avoir une requete
      select * from $resultSelectStatut where email = 'toto@gmail.com
      
      • Partager sur Facebook
      • Partager sur Twitter
      "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.
        19 novembre 2011 à 9:51:51

        Ce qu'il fautdrait surtout faire, c'est une seule table avec une colonne "statut"...
        • Partager sur Facebook
        • Partager sur Twitter

        Conditionlors de la selection de la table

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown