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 :

Garder des valeurs en mémoire


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut Garder des valeurs en mémoire
    Bonjour,
    J'ai créer une page d'identification avec login et mot de passe pour des profs mais lorsque je veux récupérer sur une autre page les élèves du prof dans une liste déroulante à l'aide d'une jointure sur le login du prof je n'obtiens rien dans ma liste. voila le code que j'ai utilisé ci-desssous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
      <?php
     include('ConnectEcole.php');
      $rqSql = "SELECT * FROM eleve, prof WHERE eleve.NumProf = Prof.NumProf and LoginProf = '".$_POST['login']."'";
       $result = mysql_query( $rqSql)
                 or die( "Exécution requête impossible.");
      while ($resultat = mysql_fetch_array($result)){ 
     
       echo "<option>".$resultat["NomEleve"]."</option>\n";
      } 
       ?>
    Merci d'avance

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Bonjour,

    As-tu fais un echo de la requête ?

  3. #3
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    j'obtiens rien du tout

  4. #4
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    Mais lorsque que je supprime la fin de ma requête j'obtiens bien la liste de tous les élèves...

  5. #5
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par natie_49
    j'obtiens rien du tout
    $rqSql ne contient rien ?

  6. #6
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    oui apparemment

  7. #7
    Membre averti
    Avatar de Julien.alkaza
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 239
    Points : 363
    Points
    363
    Par défaut
    Citation Envoyé par natie_49
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
      <?php
     include('ConnectEcole.php');
      $rqSql = "SELECT * FROM eleve, prof WHERE eleve.NumProf = Prof.NumProf and LoginProf = '".$_POST['login']."'";
       $result = mysql_query( $rqSql)
                 or die( "Exécution requête impossible.");
      while ($resultat = mysql_fetch_array($result)){ 
     
       echo "<option>".$resultat["NomEleve"]."</option>\n";
      } 
       ?>
    Ca n'est pas nécessaire de faire toutes ces opérations de concaténation...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $login = if (isset($_POST['login'])){
    $login = $_POST['login'];
    $rqSql = "SELECT * FROM eleve, prof WHERE eleve.NumProf = Prof.NumProf AND LoginProf = '$login';";
    devrait marcher...

    EDIT : Tu n'as pas mis le " ; " à la fin de ta requete...
    Admin Réseaux & Systèmes.

    Red Hat Certified Technician...#604006101698235

  8. #8
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    j'ai une erreur à ce niveau là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $login = if (isset($_POST['login'])){

  9. #9
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par natie_49
    j'ai une erreur à ce niveau là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $login = if (isset($_POST['login'])){
    Ca veut dire quoi pour toi ? Tu fais un if et tu mets le résultat dans $login, mais je pense pas qu'un if renvoie quelque chose... Enlève $login =


    EDIT : Tu n'as pas mis le " ; " à la fin de ta requete...
    C'est nouveau ça ?
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  10. #10
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    Ca change rien j'arrive toujours pas à récupérer les élèves du prof identifier!!!

  11. #11
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Redonne ton code complet (celui du premier post) avec la modif.
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  12. #12
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?php
     include('ConnectEcole.php');
     if (isset($_POST['login'])){
     $login = $_POST['login'];}
     $rqSql = "SELECT * FROM eleve, prof WHERE eleve.NumProf = Prof.NumProf AND LoginProf = '$login';";
       $result = mysql_query( $rqSql)
                 or die( "Exécution requête impossible.");
      while ($resultat = mysql_fetch_array($result)){ 
     
       echo "<option>".$resultat["NomEleve"]."</option>\n";
      } 
       ?>

  13. #13
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Le isset ne sert à rien si tu mets l'accolade ici.
    Essaie ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     <?php
    include('ConnectEcole.php');
    if (isset($_POST['login'])){
    $login = $_POST['login'];
    $rqSql = "SELECT * FROM eleve, prof WHERE eleve.NumProf = Prof.NumProf AND LoginProf = '$login';";
       $result = mysql_query( $rqSql)
                 or die( "Exécution requête impossible.");
      while ($resultat = mysql_fetch_array($result)){ 
     
       echo "<option>".$resultat["NomEleve"]."</option>\n";
      } 
    }
    else
      echo "Login inconnu !";
       ?>
    Le problème vient probablement de la transmission du login (ça sera vérifié si ça affiche "Login inconnu !", si c'est le cas donne le code où la valeur login est transmise.
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  14. #14
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    oui j'obiens login inconnu!!
    Voila le code ke j'ai utilisé pour vérifier le login ds une autre page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    <?php
    include('ConnectEcole.php');
    $login = $_POST['login'];
    $Password = $_POST['Password'];
    // vérification du login
    if(empty($login)) 
    { 
    print("<center>Le '<b>Login</b>' est vide ! </center>"); 
    echo '<center><form action="prof.htm"><input type="submit" value= "retour"></form></center>';
    exit(); 
    } 
    // vérification du pass 
    if(empty($Password)) 
    { 
    print("<center>Le '<b>Mot de Passe</b>' est vide ! </center>"); 
    echo '<center><form action="prof.htm"><input type="submit" value= "retour"></form></center>';
    exit(); 
    }
    $sql="SELECT LoginProf FROM Prof WHERE LoginProf = '".$_POST['login']."'";
    $result=mysql_query($sql) or die("Impossible d'exécuter la requête");
    $log=mysql_fetch_array($result);
     
    $sql="SELECT PasswordProf FROM Prof WHERE PasswordProf = '".$_POST['Password']."'";
    $result=mysql_query($sql) or die("Impossible d'exécuter la requête");
    $logpass=mysql_fetch_array($result);
     
    if(($logpass['PasswordProf'] != $Password) OR ($log['LoginProf'] != $login)) {  
     echo "<p>Vous n'êtes pas administrateur du domaine.</p>"; 
     echo '<form action="prof.htm"><input type="submit" value= "retour"></form>';
     }
     else{     
      $_SESSION['login'] = $login;   
      echo 'Bienvenue '.$login.', vous avez été identifié comme administrateur du domaine';  
      echo '<br /><form action="Note.php"><input type="submit" value="ENTREZ"></form>';  }
    ?>

  15. #15
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    C'est pas ça le problème, c'est la transmission de la valeur login, je sais pas tu as fait un formulaire pour ça ? Ou plus probablement vu ton code tu utilises les sessions, dans ce cas c'est $_SESSION['login'] qu'il faut utiliser et pas $_POST['login']
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  16. #16
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    c'est un formulaire que j'utilise.
    Ca sert à quoi les sessions car jai pris une partie de ce code sur le net?

  17. #17
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par natie_49
    c'est un formulaire que j'utilise.
    Ca sert à quoi les sessions car jai pris une partie de ce code sur le net?
    Mauvaise réponse, c'est bien ce qu'il me semblait, ton code est un beau mélange entre forumlaires et sessions, alors dans ce cas
    par exemple au hasard http://php.developpez.com/faq/?page=sessions

    ou encore dans les tutos
    http://php.developpez.com/cours/

    Après on verra...

    Bon courage en tout cas
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  18. #18
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 109
    Points : 50
    Points
    50
    Par défaut
    jai enlever cette ligne et ca n'a rien changé, j'y comprend vraiment rien en php!! lol
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_SESSION['login'] = $login;

  19. #19
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    normal ce n'est pas ca le pb...

    Pour moi il faut que tu recupere le login de ton formulaire via POST ou GET
    et ensuite du le met dans une variable de session....
    Stay in Bed .. Save Energy

  20. #20
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par natie_49
    jai enlever cette ligne et ca n'a rien changé, j'y comprend vraiment rien en php!! lol
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_SESSION['login'] = $login;
    Deuxième mauvaise réponse, attention à la troisième tu sors
    Alors pour expliquer un peu : si toi-même tu ne comprends pas ce que tu fais, c'est pas facile de VRAIMENT t'aider. Le forum c'est bien pour filer un coup de main sur des problèmes précis, mais pas pour refiler tout le travail aux autres sous prétexte qu'on est un peu fainéant pour comprendre un minimum les choses.

    Dans ta page de traitement (le code que je t'ai laissé dans un précédent post), comme je te l'ai déjà dit remplace $_POST par $_SESSION (puisque tu utilises les SESSION à ton insu pour gérer le cas où l'utilisateur est un admin, enfin c'est ce que je comprends).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if (isset($_SESSION['login'])){
    $login = $_SESSION['login'];
    Allez, on prend son courage à deux mains et on réfléchit à ce qu'on fait même si c'est pas facile en ce jour de pont.


    Edit : Boo64 regarde bien ses codes le $_SESSION['login'] est déjà initialisé dans certains cas, je suppose que c'est uniquement dans ce cas que la deuxième page est appellée...
    Edit2 spécial Boo64 : AAAAAAAAAAAAAAAAAAAAALLEZ CHOLET
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 7
    Dernier message: 07/05/2009, 13h09
  2. Garder des paramètre en mémoire ?
    Par Invité dans le forum Débuter
    Réponses: 2
    Dernier message: 11/06/2008, 22h19
  3. [Requete] Garder des valeurs non mises a jour
    Par le_gueux90 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 15/05/2007, 13h44
  4. Garder une valeur en mémoire
    Par Pitou5464 dans le forum Access
    Réponses: 4
    Dernier message: 08/09/2006, 19h06
  5. Réponses: 6
    Dernier message: 01/09/2006, 18h04

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