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 :

recuperation checkbox ayant plusieur valeur


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Points : 33
    Points
    33
    Par défaut recuperation checkbox ayant plusieur valeur
    Bonjour a tous,

    j'ai un tableau qui affiche les éléments d'un table, au bout de chaque élement j'ai un petit checkbox.
    Je souhaiterai que lorsque je coche n'importe quel case 1 ou plusieurs l'id de l'entré (id_client) serai renvoyé a un script.

    Pour se faire il faudrait que je face un tableau qui récupère les entrées cocher puis les transmettre a l'autre page.
    j'ai essayé d'afficher les id_client sur la page de script mais je doit mal m'y prendre

    voici mon formulaire contenant la checkbox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <form name="form_sup" action="php/clients/supression.php" method="post">	
    <input type="checkbox" name="checkbox[]" value="<?php echo $client['id_client'];?>" />	
    </form>
    Voici mon bouton qui est hors fomulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" class="menu-blue" onclick="document.forms['form_sup'].submit();"><i class="fa fa-user-times" aria-hidden="true"></i><span>Supprimer</span></a>
    et voici 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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?php
    session_start ();
     
    // tester la présence de la session numutilisateurs
    if ( isset( $_SESSION['id_utilisateur']) ) {
    // Recuperation pour la variable 
    $id_utilisateur = $_SESSION['id_utilisateur'];
    }
    if (isset($_SESSION['email_utilisateur'])) {
     
    include_once('../script/connect.php');
     
    	if(isset($_POST['checkbox'])){
    		$arraychk = $_POST['checkbox'];
     
    				print_r ($arraychk);
     
    			}
     
    	}
     
    else{
    	header('Location: /gestion_co');
    }
    ?>
    quand je coche la première case le numéro de l'ID s'affiche cependant si je coche une autre case ou plusieurs ben page blanche.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Je pense que tu as créé un formulaire pour chaque checkbox, du coup, c'est toujours le premier qui est submité par la fonction javascript lors du click du lien.
    Ce que tu dois faire c'est de boucler sur la création de l'input mais pas sur le form.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form name="form_sup" action="php/clients/supression.php" method="post">	
    // début de la boucle ici
    <input type="checkbox" name="checkbox[]" value="<?php echo $client['id_client'];?>" />
    // fin de la boucle	
    </form>
    Sinon, tu peux nous montrer un peut plus sur ton code qui génère le formulaire?

    A+.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Points : 33
    Points
    33
    Par défaut
    Je te remercie pour ta réponse,

    voici 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
    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
    		<div class="row">
    							<div class="col-md-12">          
     
    								<div class="panel panel-default">
    									<div class="panel-heading">
    										Clients enregistrés
    										<div class="export pull-right"><a href="php/script/exportclient.php" name="export"><i class="fa fa-file-text-o" title="Export en .csv" aria-hidden="true"></i></a></div>
    									</div>
    										<div class="panel-body">
    											<div class="table-responsive">											
     
    												<table class="table table-striped table-bordered table-hover" id="dataTables-example">
    												<thead>
    													<tr>
    														<th>Code <a href="gestion-clients.php?tri_ordre=1"><i class="fa fa-caret-down" aria-hidden="true"></i></a></th>														
    														<th>Nom</th>
    														<th>Adresse</th>														
    														<th>Email</th>
    														<th>Téléphone</th>														
    														<th><i class="fa fa-trash center-block " aria-hidden="true"></i></th>
    													</tr>
    												</thead>									
    						<?php
    							include_once('php/script/connect.php');									
    							if(isset($_GET['tri_ordre']) AND $_GET['tri_ordre'] == 1)
    							 $ordre = 'DESC';
    							else
    							 $ordre = 'ASC';
    							$req=$bdd->query('SELECT * FROM Client ORDER BY ID_Client '.$ordre);							
    							while($client = $req->fetch())
    							{
    						?>
    												<tbody>
    													<tr class="odd gradeX">										
     
    														<td>									
    														<a href="fiche_client.php?id_client=<?php echo $client['id_client'];?> "><?php echo sprintf("CLI%'.05d\n", $client['id_client']);?></a>
    														</td>
    														<td>
    														<?php echo $client['nom_client'].' '.$client['prenom_client'];?>
    														</td>
    														<td>
    														<?php echo $client['adresse_client'].' '.$client['cp_client'].' '.$client['ville_client'];?>
    														</td>														
    														<td>
    														<?php echo $client['email_client'];?>
    														</td>	
    														<td>
    														<?php echo '0'.$client['telephone_client'];?>
    														</td>
    														<td>
    														<!--<a href="fiche_client.php?id_client=<?php echo $client['id_client'];?>"> -->
    														<form name="form_sup" action="php/clients/supression.php" method="post">	
    														 <input type="checkbox" name="checkbox[]" value="<?php echo $client['id_client'];?>" />	
    														   </form>  
    														</td>													
    													</tr>
    						<?php
    						}
    						$req->closeCursor();						
    						?>
    												</tbody>
    												</table>
    											</div>                            
    										</div>						
    								</div> 
    							</div>
    					<br />		
     
     
    							</div>
    mais dans la boucle je dois mettre une expression est ce un fetch ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <form name="form_sup" action="php/clients/supression.php" method="post">	
    														<?php 
    														while ($client = $req->fetch()){														
    														?>
    														 <input type="checkbox" name="checkbox[]" value="<?php echo $client['id_client'];?>" />	
    														 <?php
    														}
    														?>
    														   </form>
    je suis un peut largué

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Tu sort la balise ouvrante de <form> avant celle de <table> et la fermante après celle de </table>.
    Avec ton code, tu auras aussi plusieurs tbody pour la table.

    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
     <form name="form_sup" action="php/clients/supression.php" method="post">
    												<table class="table table-striped table-bordered table-hover" id="dataTables-example">
    												<thead>
    													<tr>
    														<th>Code <a href="gestion-clients.php?tri_ordre=1"><i class="fa fa-caret-down" aria-hidden="true"></i></a></th>														
    														<th>Nom</th>
    														<th>Adresse</th>														
    														<th>Email</th>
    														<th>Téléphone</th>														
    														<th><i class="fa fa-trash center-block " aria-hidden="true"></i></th>
    													</tr>
    												</thead>
    						<tbody>									
    						<?php
    							include_once('php/script/connect.php');									
    							if(isset($_GET['tri_ordre']) AND $_GET['tri_ordre'] == 1)
    							 $ordre = 'DESC';
    							else
    							 $ordre = 'ASC';
    							$req=$bdd->query('SELECT * FROM Client ORDER BY ID_Client '.$ordre);							
    							while($client = $req->fetch())
    							{
    						?>
     
    													<tr class="odd gradeX">										
     
    														<td>									
    														<a href="fiche_client.php?id_client=<?php echo $client['id_client'];?> "><?php echo sprintf("CLI%'.05d\n", $client['id_client']);?></a>
    														</td>
    														<td>
    														<?php echo $client['nom_client'].' '.$client['prenom_client'];?>
    														</td>
    														<td>
    														<?php echo $client['adresse_client'].' '.$client['cp_client'].' '.$client['ville_client'];?>
    														</td>														
    														<td>
    														<?php echo $client['email_client'];?>
    														</td>	
    														<td>
    														<?php echo '0'.$client['telephone_client'];?>
    														</td>
    														<td>
    														<!--<a href="fiche_client.php?id_client=<?php echo $client['id_client'];?>"> -->
     
    														 <input type="checkbox" name="checkbox[]" value="<?php echo $client['id_client'];?>" />	
     
    														</td>													
    													</tr>
    						<?php
    						}
    						$req->closeCursor();						
    						?>
    												</tbody>
    												</table>
     </form>
    A+.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2014
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2014
    Messages : 145
    Points : 33
    Points
    33
    Par défaut
    Ok je te remercie, cela me crée un bien un array avec les différents ID lorsque je clic sur le bouton supprimé.
    Je comprend le principe au debut du formulaire qui se crée pour chaque ligne
    cependant le HIC c'est j’aurai voulu garder également les même checkbox pour un bouton modifier.

    exemple si je coche la case 5 si je clic sur supprimer cela lancera un script de suppression mais si je clic sur supprimé j'arriverai sur la page de modification.

    Est ce possible ?

Discussions similaires

  1. Réponses: 14
    Dernier message: 12/05/2014, 15h34
  2. "Grouper par" un champ ayant plusieurs valeurs
    Par billout rm dans le forum SharePoint
    Réponses: 4
    Dernier message: 13/03/2009, 09h12
  3. Réponses: 2
    Dernier message: 18/02/2009, 23h44
  4. [Tableaux] Plusieurs valeurs pour une seule CheckBox
    Par Phenol dans le forum Langage
    Réponses: 2
    Dernier message: 01/03/2007, 17h54
  5. Recupere plusieurs valeur d'une page
    Par ponpon17430 dans le forum Général JavaScript
    Réponses: 18
    Dernier message: 02/09/2006, 20h11

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