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 :

Mise à jour de la BDD avec coches [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Mise à jour de la BDD avec coches
    Bonjour, je voudrais afficher sur une page le contenue d'une table avec champs : id, prenom, nom, adresse (adresse mail), envoie.

    donc j'affiche le contenue de la table sous forme de tableau avec nom prenom et adresse, sur chaque ligne est précédé d'une coche de type checkbox.

    Je coche (ou pas) et j'envoie grace à un bouton de type "submit" . et je veux que sur la page de réception je mette cette table à jour dans le champs "envoie"

    A "1" si j'avais coché la case, et à "0" si j'avais pas coché la case.

    Evidement la difficulté est que se soit mis à jour sur la bonne entrée.

    voila mon code

    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
    mysql_connect("*****", "*****", "*****");mysql_select_db("*****");
    $retour = mysql_query('SELECT * FROM newslettermembre ORDER BY id DESC');
    while( $donnees = mysql_fetch_array($retour) )
    {
    $checked = $donnees['envoie'] == 1 ? ' checked="checked"' : '';
    echo '<tr>
    <td><input type="checkbox" name="envoie" /></td>
    <td>' . htmlspecialchars(stripslashes($donnees['nom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['prenom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['adresse'])) . '</td>
    </tr>';
    }
     
    ?>
    ceci été la page d'envoie, mais la page de reception j'attend vos idée pacque je sais faire une UPDATE en boucle, mais je ne sais pas comment faire correspondre les bonnes entrée :

    Par exemple:

    [] DUPOND jean ***********
    [] HERMANN jean pierre *********
    [] FOGER maxime **************
    .....

    |envoyer|

    je coche par exemple HERMANN Jean pierre et les 2 autre je laisse décoché, et j'envoie: je veux donc que dans ma bdd, le champs "envoie" de jean pierre passe à "1" et les autre passent à "0" . mais je lutte

    Pouvez vous m'aider?

  2. #2
    Membre habitué Avatar de Aliosha
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Points : 138
    Points
    138
    Par défaut
    Alors, ça ne s'appelle pas « coche de type checkbox » mais « checkbox » tout court (je te charrie un peu).

    Une information importante à savoir, dans la récupération des données : si une checkbox est cochée, $_POST['nom_de_la_checkbox'] est égal à 'on' et si elle n'est pas cochée, $_POST['nom_de_la_checkbox'] est égal à... rien du tout ! Il n'y a pas de 'off', il n'y a rien, c'est tout...

    Donc, déjà, dans l'affichage de tes données, une manière de faire : :

    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
     
    $i=1;
    while( $donnees = mysql_fetch_array($retour) )
    {
    echo '<tr>
    <td><input type="checkbox" name="envoi$i" ';
    if ($donnees['envoi$1'] == 'on') {
    echo 'checked';
    }
    echo ' /></td>
    <td>' . htmlspecialchars(stripslashes($donnees['nom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['prenom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['adresse'])) . '</td>
    </tr>';
    $i++;
    }
    Ensuite (tu ne l'as pas spécifié, donc je le rappelle), il faut amorcer avant un formulaire <FORM type='' etc> (mais je me doute bien que tu as fait ça ! ).

    Dans la récupération des données, tes checkbox seront de type : $_POST['envoi1'], $_POST['envoi2'], etc.

    Voilà, donc tu as une suite de $_POST['envoi*'];... Comment faire autant d'update avec une boucle ?
    C'est très simple. Tu as $i, qui, à la fin de ton while, correspond au nombre de checkbox affichées plus 1 !

    (Là je suppose que ton script d'envoi de données est sur une page différente de ton formulaire)
    Pour « passer » ta valeur $i d'une page à l'autre, il suffit d'ajouter un input de type HIDDEN (une valeur cachée) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input TYPE HIDDEN name='nombredi' value='$i'>;
    Dans ton script de mise à jour, tu feras ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     for($j=1 ; $j< $_POST['nombredi'] ; $j++) {
         if ($_POST['envoi$j'] == 'on') { //(Si la checkbox est cochée)
            $requete = "UPDATE ou INSERT...";
         }
    }
    Pour « lier » tes données (nom, prénom et autre) d'une page à l'autre, tu fais de la même manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="HIDDEN" name="nomcache$1" VALUE="'.$donnees['nom'].'">
    Etc.
    A l'intérieur de ton WHILE (que tu as donné).

    Donc en gros, ça te donne un code de type :

    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
     
    $i=1;
    while( $donnees = mysql_fetch_array($retour) )
    {
    echo '<tr>
    <td><input type="checkbox" name="envoi$i" ';
    if ($donnees['envoi$1'] == 'on') {
    echo 'checked';
    }
    echo ' /></td>
    <td>' . htmlspecialchars(stripslashes($donnees['nom'])) . '
    <input type="HIDDEN" name="nomcache$1" VALUE="'.$donnees['nom'].'"></td>
    <td>' . htmlspecialchars(stripslashes($donnees['prenom'])) . '
    <input type="HIDDEN" name="prenomcache$1" VALUE="'.$donnees['prenom'].'"></td>
    <td>' . htmlspecialchars(stripslashes($donnees['adresse'])) . '
    <input type="HIDDEN" name="adressecache$1" VALUE="'.$donnees['adresse'].'"></td>
    </tr>';
    $i++;
    echo "<input TYPE HIDDEN name='nombredi' value='$i'>";
    }
    Le code précédent n'est pas du tout corrigé (notamment les guillements et les simple quotes... donc ne prends pas ça au pied de la lettre !).
    Bon, je t'ai un peu tout expliqué en vrac... J'espère que tu m'auras compris !
    « Le vécu-plat excite le chaos-rêve. » Traité de l'inactivité, Dimitri Grouchkch.

  3. #3
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Sur tout les forum ou j'ai poster ce probleme, tu es le premier à m'avoir donner une répose concrete. je t'en remercie.

    Autre soucis, un ga que j'avais coché passe à "on" mais si le coup d'apres je décide de le décoché, il faut qui passe à .... 'vide' . comment faire pour effacer une valeur d'une champs sur une entrée précise?

    autre soucis : $i ne correspond pas forcément à l'id du ga.
    si je supprime 5 entrée, le numéroe 8 par exemple va se trouvé en 3 eme place, et si $i=3 il va croire que je veux mettre à jour l'entrée avec l'id 3 mais en réalité c'est l'emplacement n3 dans le tableau qui m'interesse

    vois-tu ou je veux en venir?

  4. #4
    Membre habitué Avatar de Aliosha
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Points : 138
    Points
    138
    Par défaut
    Citation Envoyé par cyril6789
    Autre soucis, un ga que j'avais coché passe à "on" mais si le coup d'apres je décide de le décoché, il faut qui passe à .... 'vide' . comment faire pour effacer une valeur d'une champs sur une entrée précise?
    En fait, il faut modifier un peu la boucle que je t'ai donnée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    for($j=1 ; $j< $_POST['nombredi'] ; $j++) { 
          if ($_POST['envoi$j'] == 'on') { //(Si la checkbox est cochée) 
                $requete = "UPDATE table SET (ton_champ='$ta_valeur')";
          }
          else {
                $requete = "UPDATE table SET (ton_champ='')"; // La requête n'est pas complète, c'est pour te montrer
          }
    }
    Citation Envoyé par cyril6789
    autre soucis : $i ne correspond pas forcément à l'id du ga.
    si je supprime 5 entrée, le numéroe 8 par exemple va se trouvé en 3 eme place, et si $i=3 il va croire que je veux mettre à jour l'entrée avec l'id 3 mais en réalité c'est l'emplacement n3 dans le tableau qui m'interesse

    vois-tu ou je veux en venir?
    Oui !
    Mais en fait, il faut que tu ajoutes (j'avais oublié de te le dire) un champ caché dans ton formulaire (dans le while !) de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="HIDDEN" name="id$1" VALUE="'.$donnees['id'].'">';
    Ainsi, le résultat de $_POST['id3'] pourra être 8, et non pas 3, par exemple. :o)
    « Le vécu-plat excite le chaos-rêve. » Traité de l'inactivité, Dimitri Grouchkch.

  5. #5
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    merci je vais essayer cela, en attendant j'ai un probleme avec ton HIDDEN , il ne me cache rien du tout, il me mais un cadre de type text avec a valeur de $i ....

  6. #6
    Membre habitué Avatar de Aliosha
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Points : 138
    Points
    138
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    < INPUT TYPE=HIDDEN NAME=nom_variable VALUE=valeur_variable >
    (A une de mes réponses j'avais mis TYPE HIDDEN sans le =...)

    Désolé
    « Le vécu-plat excite le chaos-rêve. » Traité de l'inactivité, Dimitri Grouchkch.

  7. #7
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    alors j'ai du nouveau: (mais toujours pas de mise à jour):

    page de rédaction:

    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
     
    <?php 
    mysql_connect("*****", "*****", "*****");mysql_select_db("*****");
    $i=1;
    $retour = mysql_query('SELECT * FROM newslettermembre ORDER BY id ASC');
    while( $donnees = mysql_fetch_array($retour) )
    {?>
    <td><input type="checkbox" name="<?php echo 'envoie'.$i.'';?>" <?php if ($donnees['envoie']=="on"){?> checked="checked"<?php } ?> /></td>
    <?php
    echo '
    <td>' . htmlspecialchars(stripslashes($donnees['nom'])) . '
    <input type="HIDDEN" name="nomcache'.$i.'" VALUE="'.$donnees['nom'].'"></td>
    <td>' . htmlspecialchars(stripslashes($donnees['prenom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['adresse'])) . '</td>
    </tr>';
    $i++;
    echo ' <input TYPE="HIDDEN" name="nombredi" value="'.$i.'">';
    }
      ?>
    page d'envoie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $j = 1 ;
     while ($j <= $_POST['nombredi']) 
     {
     
         if ($_POST['envoie'.$j.''] == 'on') 
      { //(Si la checkbox est cochée)
            mysql_query("UPDATE newslettermembre SET envoie='" . $_POST['envoie'.$j.''] . "' WHERE nom=" . $_POST['nomcache'.$j.'']);
         }
      $j++;
    }
    ou est l'erreur? ma concaténation est elle mauvaise? ma mise à jour ne se fait elle pas comme il faut? ma boucle while est elle mauvaise?

  8. #8
    Membre habitué Avatar de Aliosha
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Points : 138
    Points
    138
    Par défaut
    Alors... plusieurs trucs.

    Déjà le plus visible :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo ' <input TYPE="HIDDEN" name="nombredi" value="'.$i.'">';
    Tu ne doit pas le mettre dans ta boucle, sinon, il te renvoie autant d'inputs que d'id... Il faut le mettre après. Ce qui nous intéresse, dans la partie formulaire, c'est le nombre d'$i TOTAL (+1, avec le dernier $i++).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><input type="checkbox" name="<?php echo 'envoie'.$i.'';?>" <?php if ($donnees['envoie']=="on"){?> checked="checked"<?php } ?> /></td>
    1/ Aère ton code

    2/ checked="checked" -> checked tout court.

    Ensuite...

    C'est assez compliqué de t'expliquer, la manière dont tu t'y es pris est heu... discutable. Je te conseille de faire ton formulaire en intégralité, déjà.

    Si je reprends le but de ton message :

    je coche par exemple HERMANN Jean pierre et les 2 autre je laisse décoché, et j'envoie: je veux donc que dans ma bdd, le champs "envoie" de jean pierre passe à "1" et les autre passent à "0" . mais je lutte
    En gros, tu veux qu'il n'y ait qu'une seule case cochée, c'est ça ?

    Il faut que tu spécifie, dans la colonne 'envoie' (ça s'écrit envoi, au fait) le numéro de ta checkbox cochée.

    Puis, dans le formulaire, dire : $donnees[envoie] est égal à telle checkbox, il faut cocher cette checkbox.

    Ai-je bien compris ?
    « Le vécu-plat excite le chaos-rêve. » Traité de l'inactivité, Dimitri Grouchkch.

  9. #9
    Membre actif Avatar de bigltnt
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 205
    Points
    205
    Par défaut
    Salut !

    Je ne peux pas te faire de réponse personnalisée, mais si tu as le temps de jetter un petit coup d'oeil, je te donne les sources de mon site, qui utilise à la fois les checkbox et aussi les radio.

    Tu devrais (je pense) y trouver ton bonheur si tu l'adaptes pour toi !

    ==============================

    Mon but est d'associer des rubriques à un groupe, ces rubriques étant associées au groupe avec un droit (1, 2 ou 3). Voici l'image du formulaire pour mieux comprendre (il s'agit ici de la modification des droits/groupe existants):
    Nom : rubriques.JPG
Affichages : 259
Taille : 56,6 Ko

    Ensuite, voici la source (épurée, a copier/coller dans un editeur pour bien voir):

    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
    105
    106
    <?php
     
     
    //*** TRAITEMENT DU POST  ***//
    	if(!empty($_POST))
    	{	
    		include("../../connect_bdd.php");
     
    		if(($_POST['action']=="modifier")||($_POST['action']=="creer"))
    		{	$designation_groupe=addslashes($_POST['designation_groupe']);
    			$description_groupe=addslashes($_POST['description_groupe']);
    		}
     
    		if($_POST['action']=="modifier")
    		{	
    			if(empty($_POST['designation_groupe']))
    			{	die("ERREUR vous devez remplir tous les champs avec *");}
     
    			$id_groupe=addslashes($_POST['id_groupe']);
    			$sql1="UPDATE groupe SET designation_groupe='$designation_groupe', description_groupe='$description_groupe' WHERE id_groupe='$id_groupe'";
     
    			if(mysql_query($sql1))
    			{	if(isset($_POST['droit']))
    				{
    					foreach($_POST['droit'] as $indice => $valeur)
    					{
    						$sql2="UPDATE acceder SET droit_acceder='$valeur' WHERE id_groupe='$id_groupe' AND id_typenews='$indice'";
    						if(!(mysql_query($sql2)))
    						{
    							die("Erreur lors de la mise à jour des droits");
    						}
    					}					
    				}
    				header("Location: ../index.php?page=groupe&action=detail&id_groupe=$id_groupe");
    			}
     
    			else
    			{	die("Erreur lors de la mise à jour du groupe");}
    		}
     
    	}
     
    //*** FIN DE TRAITEMENT DU POST  ***//
     
     
    	include("groupe/fonctions_util.php");
    	include("../connect_bdd.php");
     
     
    	if(isset($_GET['action']))	
    	{
    		if($_GET['action']=='modifier')
    		{
    			echo'<hr/><h3> MODIFIER LES INFORMATIONS </h3><hr/>';
     
    			$sql1 = "SELECT * FROM groupe WHERE id_groupe='".$_GET['id_groupe']."'";	
    			$temp1=mysql_query($sql1);
    			$result1=mysql_fetch_assoc($temp1);
     
    			echo '<form method="post" action="groupe/accueil.php">';
    			echo '<input type="hidden" name="action" value="modifier"/>';
    			echo '<input type="hidden" name="id_groupe" value="'.$_GET['id_groupe'].'"/>';
    			echo '<table border="1">';
    			foreach($result1 as $indice => $valeur)
    			{	echo intitule($indice);
    				echo formu($indice, $valeur, 0);				
    			}
     
    			$sql2="SELECT typenews.id_typenews, designation_typenews, description_typenews, droit_acceder FROM typenews, acceder WHERE acceder.id_typenews=typenews.id_typenews AND acceder.id_groupe='".$_GET['id_groupe']."'";
    			$temp2=mysql_query($sql2);
     
    			echo '<tr><td>Acces Rubriques</td><td><table border="1">';
    			while($result2=mysql_fetch_assoc($temp2))
    			{
    				echo '<tr><td rowspan="3">'.$result2['designation_typenews'].'</td>';
     
    				echo '<td><input type="radio" name="droit['.$result2['id_typenews'].']" value="1"';
    				if(($result2['droit_acceder']!=2)||($result2['droit_acceder']!=3))
    				{	echo 'CHECKED';}
    				echo '/>1 Lecture/Ecriture</td>';
     
    				echo '<td rowspan="3">'.$result2['description_typenews'].'</td></tr>';
     
    				echo '<tr><td><input type="radio" name="droit['.$result2['id_typenews'].']" value="2"';
    				if($result2['droit_acceder']==2)
    				{	echo 'CHECKED';}
    				echo '/>2 Validation/Refus</td></tr>';
     
    				echo '<tr><td><input type="radio" name="droit['.$result2['id_typenews'].']" value="3"';
    				if($result2['droit_acceder']==3)
    				{	echo 'CHECKED';}
    				echo '/>3 Modification/Suppression</td></tr>';
     
     
    			}
    			echo '</table>';
     
    			echo '<tr><td colspan="2"><input type="submit" value="Modifier"/></td></tr>';
    			echo '</table></form>';
    		}
    	}
    	else
    	{	//Affichage générique !
    	}
     
    ?>
    Voila, c'est un peu tarabiscoté mais ca marche bien ! Le truc étant que pour moi, si $_POST['droit'] existe, alors il y a modification à apporter ! ++

  10. #10
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    c'est gentil de ta part, je vais y jeter un coup d'oeil.

  11. #11
    Candidat au Club
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Biiiiiiiiiiiinnnnnnnnnnnnngoooooooooooooooo !!!!!!
    Wouhou ça soulage d'y arriver enfin!! non de dieu!!

    apres votre aide et celle d'autre forum plus celle d'un amis! j'obtient enfin ce que je veux! je vais quand meme révéler mon secret :

    Page de rédaction:
    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
    <?php 
    mysql_connect("*****", "*****", "*****");mysql_select_db("*****");
    $i=1;
    $retour = mysql_query('SELECT * FROM newslettermembre ORDER BY id ASC');
    while( $donnees = mysql_fetch_array($retour) )
    {?>
    <td><input type="checkbox" name="<?php echo 'envoie'.$i.'';?>" <?php if ($donnees['envoie']=="on"){?> checked="checked"<?php } ?> /></td>
    <?php
    echo '
    <td>' . htmlspecialchars(stripslashes($donnees['nom'])) . '
    <input type="HIDDEN" name="idmembre'.$i.'" VALUE="'.$donnees['id'].'"></td>
    <td>' . htmlspecialchars(stripslashes($donnees['prenom'])) . '</td>
    <td>' . htmlspecialchars(stripslashes($donnees['adresse'])) . '</td>
    </tr>';
    $i++;
     
    }
    echo ' <input TYPE="HIDDEN" name="nombredi" value="'.$i.'">';
      ?>
    page de reception:
    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
     $j = 1 ;
     while ($j <= $_POST['nombredi']) 
     {
     
         if ($_POST['envoie'.$j.''] == 'on') 
      { //(Si la checkbox est cochée)
            mysql_query("UPDATE newslettermembre SET envoie='on' WHERE id=" . $_POST['idmembre'.$j.'']);
      echo $_POST['idmembre'.$j.''];
         }
      else
      {
      mysql_query("UPDATE newslettermembre SET envoie='off' WHERE id=" . $_POST['idmembre'.$j.'']);
      }
     
      $j++;
    }
    merci à tous!!

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

Discussions similaires

  1. Mise a jour d'un BDD avec un flux XML
    Par pmejob dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 04/12/2013, 17h54
  2. [AC-2003] Peut-on faire une mise à jour d'une BDD avec les données
    Par Xtine dans le forum Access
    Réponses: 10
    Dernier message: 29/03/2009, 18h26
  3. Mise à jour d'une BDD avec un champ accentué
    Par gyome314 dans le forum Ruby on Rails
    Réponses: 0
    Dernier message: 13/09/2007, 09h14
  4. Mise à jour dans un formulaire avec condition
    Par Bourni dans le forum Access
    Réponses: 4
    Dernier message: 06/03/2006, 22h13
  5. Mise à jour d'une table avec un fichier csv
    Par blackangel dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 26/05/2005, 14h46

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