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 :

SQL + formulaire + interpréter des variables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut SQL + formulaire + interpréter des variables
    Bonjour à tous,

    J'ai eu quelques difficultés à trouver un titre résumant la situation... Voici mon problème.

    Je travaille sur un ensemble de formulaires, dont tous les paramètres sont contenus dans une base de données.

    Dans le premier formulaire, l'utilisateur peut choisir une date ; cette date correspond à un cours.
    Je fais ensuite une requête sql dans ma base de données pour trouver toutes les personnes ayant assisté à ce cours.
    Puis je fais une boucle pour créer un formulaire pour chaque personne présent au cours. Dans ce formulaire, on peut cocher une case pour dire si la personne était absente ou non (case cochée = personne absente).

    Pour reformuler, j'ai donc un formulaire avec une liste d'élèves et une case à cocher pour chaque élève.
    Je voudrais ensuite pouvoir ajouter dans ma base de données les personnes ayant été absentes au cours.

    Dans ma base de données, j'ai une table "étudiants" avec un champ "nom_etudiant". Si la personne a été absente, je voudrais compléter une autre table "Remarques" dont un des champs est "absent". Si l'étudiant est absent, alors on mettra "oui" dans le champ "absent".

    Voici le code que j'ai développé :

    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
    <?php
    // Donnée du formulaire précédent
    $seance=$_POST['seance'];
    $sql="SELECT nom_etudiant FROM etudiants WHERE seance= '$seance'";
    $req = mysql_query($sql);
    ?>
     
    <form method="post" action="absence.php">
    <p>
    <?php
    	while ($donnees = mysql_fetch_array($req))
    	{
    		echo $donnees['nom_etudiant'];
    	?>
    	<fieldset>
    	<!--  Case a cocher si absence -->
    	<label> Absence : </label>
    	<input type="checkbox" name=" <?php echo $donnees['nom_etudiant'].'_absence'; ?>" id=" <?php echo $donnees['nom_etudiant']; ?>  .absence">
     
    ?>
    A partir de là, je souhaiterais savoir comment récupérer la valeur de la case à cocher pour chaque étudiant...
    Dans mon fichier de traitement du formulaire absence.php, j'ai refait la même requête pour récupérer les étudiants assistant au cours. J'ai fait la même boucle. Mais je suis bloquée pour récupérer la valeur de la case à cocher...
    J'aurais aimé mettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $_POST[$donnees['nom_etudiant'].'_absence'];
    ... mais bien sûr ça ne marche pas.

    Quelqu'un a-t-il déjà été confronté au problème ? Et aurait une idée ?

    Merci d'avance pour votre aide...

    Chloé

  2. #2
    Membre confirmé

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Points : 597
    Points
    597
    Par défaut
    J'ai parcourut ton message en deux minutes. Et si j'ai bien compris ton problème tu n'arrives pas à récupérer les POST contenant les absences ? Je suis juste ?

    Si c'est ça, une solution serait de lister tous les paramètre en POST et de faire une expression régulière dessus voir si ils contiennent la substring _absence.

    Ça me parait très sale mais fonctionnel, je réfléchirai à une solution plus propre ce soir

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Oui, c'est ça : mon but est de récupérer pour chaque étudiant la valeur de la case à cocher "absence".
    Et les name de mes cases à cocher dépendent du nom de l'étudiant (nom que j'ai récupéré via ma requête sql).

    Je ne suis pas très familière avec les expressions régulières, mais si c'est le seul moyen de faire ça, alors je m'y mettrai !
    Je vais commencer à regarder comment ça fonctionne, en attendant d'autres éventuelles idées...

    Merci pour ton aide en tout cas !

    Chloe

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    J'avais oublié de fermer ma balise <form> !

    Donc en fait, je n'ai pas de problème !
    J'étais persuadée qu'on ne pouvait pas mettre une variable dans un POST, mais si si, aucun souci.

    Donc ce post est résolu, merci à ceux qui ont pris le temps de le lire.

  5. #5
    Membre confirmé

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Points : 597
    Points
    597
    Par défaut
    oui tu peux mettre tes variable ou tu veux, tu les insères dans du code HTML qui est généré par depuis le PHP.

    Un conseil regarde le code généré depuis un navigateur, par exemple avec firefox il te met en évidence les balises non fermé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Désactiver l'interprétation des variables "cvs"
    Par proDZ dans le forum Langage
    Réponses: 0
    Dernier message: 09/11/2009, 09h40
  2. interprétation des variables dans une chaîne
    Par marts dans le forum Langage
    Réponses: 2
    Dernier message: 31/01/2009, 20h01
  3. interprétation des variables
    Par carlino dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 09/07/2008, 09h20
  4. [FORMS10g] Interprétation des variables globales
    Par pompidouwa dans le forum Forms
    Réponses: 3
    Dernier message: 09/01/2008, 11h28
  5. Non interprétation des variables
    Par usf70 dans le forum wxPython
    Réponses: 3
    Dernier message: 09/05/2007, 13h21

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