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 :

les boucle sous PHP' ajout de plusieurs enregistrement en même temps


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut les boucle sous PHP' ajout de plusieurs enregistrement en même temps
    bonjours
    j'ai une BD qui contient les notes des étudiant , j'ai crée une formulaire qui permet de l'enseignant de taper les notes de leur étudiants le problème est que l'ajout se faite étudiant par étudiant est ce que possible de faire une boucle qui permet de l'enseignant d'ajouter les note de tout les étudiants en même temps

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    oui c'est possible
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut

    comment?????

  4. #4
    Membre éprouvé
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 112
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO `table` VALUES ('id de l étudiant1' , 'note1', 'id de l étudiant 2' , 'note 2');
    Ceci dans le cas ou ta table ne contient que 2 colonnes, id de l'étudiant et note.

    Pour plus d'aide, donne nous plus d'infos sur ton script php et la structure de ta table.

  5. #5
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut
    bonjour, la table du note contient les champs suivants
    'code_module', num_inscription','note_rattrapage','note_synthese','note_controle','note_TD','noteTP'.
    le code est
    Code X : 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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <table width="306" height="51" border="0" align="center" cellpadding="0" cellspacing="0" background="../../image/fbg.jpg">
        <tr>
          <td height="30">&nbsp;&nbsp;&nbsp;<img src="../../image/gpuce.gif" width="20" height="15" /><span class="style23">
          Modèle de la saisie de note</span></td>
        </tr>
        <tr>
          <td><form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1">
      <table align="center">
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Numero d'inscription:</td>
                  <td><input type="text" name="numero_inscriion" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Nom de module:</td>
                  <td><select name="m_code">
                      <?php 
    do {  
    ?>
                      <option value="<?php echo $row_rs_module['m_code']?>" ><?php echo $row_rs_module['m_nom']?></option>
                      <?php
    } while ($row_rs_module = mysql_fetch_assoc($rs_module));
    ?>
                    </select>
                  </td>
                </tr>
                <tr> </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Controle1:</td>
                  <td><input type="text" name="controle1" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Controle2:</td>
                  <td><input type="text" name="controle2" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">TD:</td>
                  <td><input type="text" name="TD" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">TP:</td>
                  <td><input type="text" name="TP" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Syntyse:</td>
                  <td><input type="text" name="syntyse" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Rattrapage:</td>
                  <td><input type="text" name="rattrapage" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">Rapport:</td>
                  <td><input type="text" name="rapport" value="" size="32" /></td>
                </tr>
                <tr valign="baseline">
                  <td nowrap="nowrap" align="right">&nbsp;</td>
                  <td><input type="submit" value="Insérer" /></td>
                </tr>
              </table>
              <input type="hidden" name="MM_insert" value="form1" />
            </form>
          <p>&nbsp;</p></td>
        </tr>
      </table>

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Par défaut
    Bonsoir

    J’ai créer une page qui vous permet de faire ça;

    1ere : au démarrage de la page il affiche un formulaire qui demande de saisir le nombre d'enregistrement souhaité.

    2eme : après il va vous affichez un tableau des champs a l'aide de la boucle demandé dans votre question.

    Voici le code il est testé et besoin d'amélioration et l’adaptation avec votre requete.
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
     
    <?php 
    mysql_connect("localhost","root","");
    mysql_select_db("etudiant");
     
    if(isset($_POST['etape']) and $_POST['etape'] == 2){
     	for($i=0;$i<$_POST['nb_etudiant'];$i++){ 
    		$numero_inscription = $_POST['numero_inscription:'.$i];
    		$m_code = $_POST['m_code:'.$i];
    		$controle1 = $_POST['controle1:'.$i];
    		$controle2 = $_POST['controle2:'.$i];
    		$TD = $_POST['TD:'.$i];
    		$TP = $_POST['TP:'.$i];
    		$syntyse = $_POST['syntyse:'.$i];
    		$rattrapage = $_POST['rattrapage:'.$i];
    		$rapport = $_POST['rapport:'.$i];
     
    		/***********************************************************
    		               Votre requete ici 
    		************************************************************/
    	}
    	header('Location: index.php');
    }
     
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans titre</title>
    <style type="text/css">
    <!--
    .Style5 {font-family: Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; }
    -->
    </style>
    </head>
     
    <body>
    <?php if(!isset($_POST['etape'])) { ?>
    <h3>Etape 1 :: Nombre des étudiant </h3>
    <form action="" method="post" name="etudiant">
    <input name="etape" type="hidden" value="1" />
    <table width="407" border="0" align="center" cellpadding="1" cellspacing="1">
      <tr>
        <td width="199">Entrer le nombre des etudiant </td>
        <td width="201"><input name="nombre" type="text" size="10" />
        &nbsp;</td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td><input name="suivant" type="submit" value="Suivant" />&nbsp;</td>
      </tr>
    </table>
    </form>
    <?php } else { ?>
    <h3>Etape 2 :: Saisie des donn&eacute;es </h3>
     
    <form action="" method="post" name="etudiant">
    <input name="etape" type="hidden" value="2" />
    <input name="nb_etudiant" type="hidden" value="<?php echo $_POST['nombre']; ?>" />
    <table width="100%" border="0" cellspacing="1" cellpadding="1">
      <tr>
        <td width="14%" bgcolor="#FFAD5B"><span class="Style5">Numero d'inscription</span></td>
        <td width="10%" bgcolor="#FFAD5B"><span class="Style5">Nom de module</span></td>
        <td width="11%" bgcolor="#FFAD5B"><span class="Style5">Controle1</span></td>
        <td width="12%" bgcolor="#FFAD5B"><span class="Style5">Controle2</span></td>
        <td width="10%" bgcolor="#FFAD5B"><span class="Style5">TD</span></td>
        <td width="10%" bgcolor="#FFAD5B"><span class="Style5">TP</span></td>
        <td width="12%" bgcolor="#FFAD5B"><span class="Style5">Syntyse</span></td>
        <td width="11%" bgcolor="#FFAD5B"><span class="Style5">Rattrapage</span></td>
        <td width="10%" bgcolor="#FFAD5B"><span class="Style5">Rapport</span></td>
      </tr>
      <?php for($i=0;$i<$_POST['nombre'];$i++){ ?>
      <tr>
        <td bgcolor="#FFF4EA"><input type="text" name="numero_inscription:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><select name="m_code:<?php echo $i; ?>">
          <?php 
    do {  
    ?>
          <option value="<?php echo $row_rs_module['m_code']?>" ><?php echo $row_rs_module['m_nom']?></option>
          <?php
    } while ($row_rs_module = mysql_fetch_assoc($rs_module));
    ?>
        </select></td>
        <td bgcolor="#FFF4EA"><input type="text" name="controle1:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="controle2:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="TD:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="TP:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="syntyse:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="rattrapage:<?php echo $i; ?>" value="" size="10" /></td>
        <td bgcolor="#FFF4EA"><input type="text" name="rapport:<?php echo $i; ?>" value="" size="10" /></td>
      </tr>
      <?php } ?>
    </table>
     <div align="right">
        <input type="submit" name="Submit" value="Insérer" />
      </div>
    </form>
     
     
    <?php } ?>
     
    </body>
    </html>

  7. #7
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut
    merci infiniment je ne sais pas comment je vous remercie j'essayerais la formulaire ensuite je te rappele

  8. #8
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut
    il m'affiche ce message d'erreur
    """Erreur de syntaxe près de ' , )' à la ligne 1"""""""""

  9. #9
    Membre à l'essai
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Par défaut
    je vien de creer un table notes qui contient les information,
    le message d'erreur est vien de le type int de m_code je le corriger dans la requete est je fait un teste d'inserrer 2 enregistrement est ca marche . remplacer votre requete par celle ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $insertSQL = sprintf("INSERT INTO notes (numero_inscription, m_code, controle1, controle2, TD, TP, syntyse, rattrapage) VALUES ('%s', '%d', '%s', '%s', '%s', '%s', '%s', '%s');",
                          	$numero_inscription,
                          	$m_code,
                           	$controle1,
                           	$controle2,
                           	$TD,
                           	$TP,
                           	$syntyse,
                           	$rattrapage);

  10. #10
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut
    merci infiniment le code marche très bien si je ne vous dérange pas
    s'il est possible expliquer moi le code de l'insertion puisque je ne veux pas utiliser un code sans comprendre la 2 eme chose je veux amélioré de la première etap puisque les étudiants sont regroupé dans des filière et dans chaque filière il y a des groupe est ce qui'il possible que le prof choisi seulement la filière est l'année de l'étude et le groupe ensuite dans la 2 éme etap il y a l'affichage de tout les étudiants de ce groupe c'est facille pur lui mais difficile pour réaliser non?
    merci pour la deuxième fois tu ma fais une grande plaisir

  11. #11
    Membre à l'essai
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Par défaut
    Avec plaisir je peut vous expliquer la requête mais pour les améliorations je peut les faire demain matin ok (rien n'est difficile en php ).

    comme je boucler sur l'affichage des champs et attribuer des noms différents ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    name="controle1:<?php echo $i; ?>"
    je fait le même chose avec la requête d'insertion puisque je savoir d'avance le nombre des étudiants a l'aide de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="nb_etudiant" type="hidden" value="<?php echo $_POST['nombre']; ?>" />
    intégrer dans le formulaire de la 2eme étape.

    et voici le code avec les commentaires :
    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
     
    // je boucle sur le nombre des étudiants comme dans le formulaire 
     	for($i=0;$i<$_POST['nb_etudiant'];$i++){ 
                   // après je récupère les noms de variable de formulaire de la meme façon pour son création. et je les met dans des variables php.  
    		$numero_inscription = $_POST['numero_inscription:'.$i];
    		$m_code = $_POST['m_code:'.$i];
    		$controle1 = $_POST['controle1:'.$i];
    		$controle2 = $_POST['controle2:'.$i];
    		$TD = $_POST['TD:'.$i];
    		$TP = $_POST['TP:'.$i];
    		$syntyse = $_POST['syntyse:'.$i];
    		$rattrapage = $_POST['rattrapage:'.$i];
    		$rapport = $_POST['rapport:'.$i];
    		// apres je fait une insertion simple a l'aide des variables créer au dessus
    		$insertSQL = sprintf("INSERT INTO notes (numero_inscription, m_code, controle1, controle2, TD, TP, syntyse, rattrapage) VALUES ('%s', '%d', '%s', '%s', '%s', '%s', '%s', '%s');",
                          	$numero_inscription,
                          	$m_code,
                           	$controle1,
                           	$controle2,
                           	$TD,
                           	$TP,
                           	$syntyse,
                           	$rattrapage);
     
      $Result1 = mysql_query($insertSQL) or die(mysql_error());
     
    	}
    c'est tous j'espere que vous avez compris la conception. salamo3alaykom et a demain

  12. #12
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 610
    Par défaut
    bonjour, j'essayé de créer une formulaire
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
     
        <table width="200" border="0" align="center" cellpadding="0" cellspacing="0" background="../../image/fbg.jpg" id="rechrche_saisie_form">
          <tr>
            <td height="30">&nbsp;</td>
          </tr>
          <tr>
            <td><table width="200" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="77"><span class="style21">Module :</span></td>
                <td width="123"><label>
                  <select name="menu_module" id="menu_module">
                    <?php
    do {  
    ?>
                    <option value="<?php echo $row_rs_module['m_code']?>"><?php echo $row_rs_module['m_nom']?></option>
                    <?php
    } while ($row_rs_module = mysql_fetch_assoc($rs_module));
      $rows = mysql_num_rows($rs_module);
      if($rows > 0) {
          mysql_data_seek($rs_module, 0);
    	  $row_rs_module = mysql_fetch_assoc($rs_module);
      }
    ?>
                  </select>
                </label></td>
              </tr>
              <tr>
                <td>Filière :</td>
                <td><label>
                  <select name="menu_filiere" id="menu_filiere">
                    <?php
    do {  
    ?>
                    <option value="<?php echo $row_rs_filiere['f_code']?>"><?php echo $row_rs_filiere['f_nom']?></option>
                    <?php
    } while ($row_rs_filiere = mysql_fetch_assoc($rs_filiere));
      $rows = mysql_num_rows($rs_filiere);
      if($rows > 0) {
          mysql_data_seek($rs_filiere, 0);
    	  $row_rs_filiere = mysql_fetch_assoc($rs_filiere);
      }
    ?>
                  </select>
                </label></td>
              </tr>
              <tr>
                <td>Année :</td>
                <td><label>
                  <select name="menu_annee" id="menu_annee">
                    <?php
    do {  
    ?>
                    <option value="<?php echo $row_rs_inscription['numero_inscription']?>"><?php echo $row_rs_inscription['numero_inscription']?></option>
                    <?php
    } while ($row_rs_inscription = mysql_fetch_assoc($rs_inscription));
      $rows = mysql_num_rows($rs_inscription);
      if($rows > 0) {
          mysql_data_seek($rs_inscription, 0);
    	  $row_rs_inscription = mysql_fetch_assoc($rs_inscription);
      }
    ?>
                  </select>
                </label></td>
              </tr>
              <tr>
                <td>Groupe :</td>
                <td><label>
                  <select name="menu_groupe" id="menu_groupe">
                  </select>
                </label></td>
              </tr>
              <tr>
                <td>Note :</td>
                <td><label>
                  <select name="menu_note" id="menu_note">
                    <option selected="selected">Controle 1</option>
                    <option>Controle 2</option>
                    <option>TD</option>
                    <option>TP</option>
                    <option>Synthese</option>
                    <option>Rattrapage</option>
                  </select>
                </label></td>
              </tr>
              <tr>
                <td>&nbsp;</td>
                <td><label>
                  <input type="submit" name="button2" id="button2" value="Recherche" />
                </label></td>
              </tr>
            </table></td>
          </tr>
        </table>
    par cette formulaire utlisé par choisir le module, filière , année , le groupe et le type de la note normalement afficher tout les étudiants qui est inscris dans ce module et filière , année et groupe et type de la note dans la 2 éme
    formulaire mais elle ne marche pas

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/04/2013, 09h19
  2. Réponses: 2
    Dernier message: 08/03/2013, 14h25
  3. Réponses: 2
    Dernier message: 23/11/2010, 14h08
  4. Réponses: 8
    Dernier message: 27/07/2006, 09h09

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