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 :

Fonction qui renvoie un tableau à partir de checkbox coché(s)


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de tonymx15
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Juin 2010
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Juin 2010
    Messages : 140
    Points : 53
    Points
    53
    Par défaut Fonction qui renvoie un tableau à partir de checkbox coché(s)
    Bonjour à tous,

    Voilà je voudrais créer une fonction qui me renvoie un tableau de checkbox coché(s)...
    J'ai essayé mais ça ne marche pas.

    La fonction PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    function caseCocher($tab){
    	$nbCase = count($tab);
    	$tableau	 = array() ;
    	$j = 0 ;
    	for ( $r = 0 ; $r < $nbCase ; $r++ ){
    		if ( $tab[r] == true ){
    			$tableau[$j] = $tab[$r] ;
    			$j++;
    		}
    	}	
    	return $tableau;
    }
    ?>

    L'appel de la fonction php :
    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('fonction.php');
     
    $objet1 = $_POST['checkBox1'] ; //la variable contient false ou true
    $objet2 = $_POST['checkBox2'] ; //la variable contient false ou true
    $objet3 = $_POST['checkBox3'] ; //la variable contient false ou true
    $tabObjet = array($objet1, $objet2, $objet3) ;
     
    $retour = array () ;
    $retour = caseCocher($tabObjet) ;
     
    echo $retour[0]; //pour exemple je voudrais que ça me renvoie l'élément 1 coché...
    ?>
    Si vous avez une autre méthode n'hésitez pas à me proposer...

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Bonjour,

    quand tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
    quand tu submit et que tu coches tes checkbox ça te donne quoi ?

    tu dois normalement avoir uniquement les cases cochées
    Le savoir est utile que s'il est partagé par tous.
    /(bb|[^b]{2})/
    !sleep() ? array((string))

  3. #3
    Membre du Club Avatar de tonymx15
    Homme Profil pro
    Intégrateur Web
    Inscrit en
    Juin 2010
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Juin 2010
    Messages : 140
    Points : 53
    Points
    53
    Par défaut
    J'utilise pas de submit, j'utilise un load javascript (jQuery) au click sur un boutton.

    Voilà tout mon contenue si tu veux le tester...

    index.php

    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html lang="fr">
    <head>
      	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      	<title>Administration</title>
      	<link rel="stylesheet" media="screen" href="../style.css">
    	<script type="text/javascript" src="jquery.js"></script>
    	<script type="text/javascript" src="script.js"></script>
    </head>
    <body>
     
    Url : <input type="text"/><br>
    <hr>
    Programmation : <input type="checkbox" value="Programmation" name="langageOption[]" /><br>
    Design : <input type="checkbox" value="Design" name="langageOption[]" /><br>
    Gestion : <input type="checkbox" value="Gestion" name="langageOption[]" /><br>
    <hr>
    Html : <input type="checkbox"/><br>
    Css : <input type="checkbox"/><br>
    Php : <input type="checkbox"/><br>
    Sql : <input type="checkbox"/><br>
    javascript : <input type="checkbox"/><br>
    <hr>
    <input type="button" name="save" value="Enregistrer"/>
     
    <div id="chargement"></div>
     
    </body>
    </html>
    script.js

    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
     
    $(document).ready( function(){
    	$("input[name=save]").click( function(){
     
    		var lien = $("input").eq(0).val();		
     
    		var programmation = $("input").eq(1).is(":checked");	
    		var design = $("input").eq(2).is(":checked");
    		var gestion = $("input").eq(3).is(":checked");
     
    		var html = $("input").eq(4).is(":checked");
    		var css = $("input").eq(5).is(":checked");
    		var php = $("input").eq(6).is(":checked");
    		var sql = $("input").eq(7).is(":checked");
    		var javascript = $("input").eq(8).is(":checked");
     
    		$("div#chargement").load("enregistrer.php",
    		{
    			url : lien,
    			prog: programmation,
    			design: design,
    			gestion: gestion,
    			html: html,
    			css: css,
    			php: php,
    			sql: sql,
    			js: javascript
    		});
     
    	});
    });
    enregistrer.php

    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
     
    <?php
    include('fonction.php');
     
    $url =  $_POST['url'];
     
    $objet1 = $_POST['prog'] ;
    $objet2 = $_POST['design'] ;
    $objet3 = $_POST['gestion'] ;
     
    $html = $_POST['html'];
    $css =  $_POST['css'];
    $php =  $_POST['php'];
    $sql =  $_POST['sql'];
    $javascript =  $_POST['js'];
     
    echo'
    url : '.$url.'<br>
    prog : '.$objet1.'<br>
    design : '.$objet2.'<br>
    gestion : '.$objet3.'<br>
    html : '.$html.'<br>
    css : '.$css.'<br>
    php : '.$php.'<br>
    sql : '.$sql.'<br>
    java : '.$javascript.'<br>
    ';
     
    ?>
    fonction.php

    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
    function caseCocher($tab){	
    	$nbCase = count($tab);
    	$tableau	 = array() ;
    	$j = 0 ;
    	for ( $i = 0 ; $i < $nbCase ; $i++ ){
    		if ( $tab[i] == 'true' ){
    			$tableau[$j] = $tab[$i] ;
    			$j++;
    		}
    	}	
    	return $tableau;
    }
    ?>

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Attention, des données envoyées par jquery avec load() passent peut-être en GET et non en POST. Pour ce genre de choses, je te conseille d'utiliser $.post
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. fonction qui renvoie un tableau
    Par deubelte dans le forum C++
    Réponses: 24
    Dernier message: 26/05/2007, 01h51
  2. fonction qui renvoie un tableau
    Par GLSpirit dans le forum C++
    Réponses: 9
    Dernier message: 12/05/2007, 14h05
  3. fonction qui renvoie un tableau
    Par toto2022 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 22/01/2007, 16h11
  4. Comment faire une fonction qui renvoi un tableau.
    Par poly128 dans le forum Delphi
    Réponses: 2
    Dernier message: 01/06/2006, 01h04
  5. Fonction qui renvoie un tableau?
    Par elm dans le forum C
    Réponses: 23
    Dernier message: 21/12/2005, 12h44

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