Choix automatique radio

Résolu
crixuss Messages postés 26 Statut Membre -  
crixuss Messages postés 26 Statut Membre -
Bonjour,

Je suis en train de faire un formulaire dans lequel un utilisateur doit donner des notes allant de A à D (avec des boutons radio). En fonction des notes qu'il aura donné, une note globale sera automatiquement coché (la note globale va de A à D aussi).
Par exemple, si l'utilisateur donne comme note A,A,A,B,D, la note globale devras être A.

j'ai essayer de faire comme ceci mais j'ai une erreur serveur a chaque fois.


function calculNoteGlobale($note_fiabilite, $note_implication, $note_efficacite, $note_innovation, $note_confiance, $note_autonomie, $note_flexibilite)
{
$compteurA= 0;
$compteurB= 0;
$compteurC= 0;
$compteurD= 0;

$note[]= $note_fiabilite, $note_implication, $note_efficacite, $note_innovation, $note_confiance,
$note_autonomie, $note_flexibilite;

foreach ($note as $key=> $valeur)
{
if ($valeur == 'A')
$compteurA ++;

if ($valeur == 'B')
$compteurB ++;

if ($valeur == 'C')
$compteurC ++;

if ($valeur == 'D')
$compteurD ++;
}

if($compteurA > $compteurB && $compteutC && $compteurD)
{
$note_globale = 'A';

if($note_globale == 'A')
{
$_GET['note_globale'] == "A";
return $_GET['note_globale'];
}
}
}

Merci d'avance.

1 réponse

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    salut

    et comme ça:
    <?php
    function calculNoteGlobale($note_fiabilite, $note_implication, $note_efficacite, $note_innovation, $note_confiance, $note_autonomie, $note_flexibilite)
    {

    //bizare ta façon de créer un array
    /*
    $note[]= $note_fiabilite, $note_implication, $note_efficacite, $note_innovation, $note_confiance,
    $note_autonomie, $note_flexibilite;
    */
    //grace a cette fonction native de php on met directement les arguments dans un array
    $note=func_get_arg();

    $nb=sizeof($note);
    $somme=0;

    foreach ($note as $key=> $valeur){
    if ($valeur == 'A')
    $somme+=4;
    if ($valeur == 'B')
    $somme+=3;
    if ($valeur == 'C')
    $somme+=2;
    if ($valeur == 'D')
    $somme+=1;
    }

    $moyenne=ceil($somme/$nb); //arrondi la moyenne a entier supérieur
    //transfo en lettre
    switch($moyenne){
    case 4:
    $moyenne_lettre='A';
    break;
    case 3:
    $moyenne_lettre='B';
    break;
    case 2:
    $moyenne_lettre='C';
    break;
    case 1:
    $moyenne_lettre='D';
    break;
    }

    return $moyenne_lettre;
    }
    ?>
    1
    1. crixuss Messages postés 26 Statut Membre
       
      c'est bon ça marche, merci beaucoup!!! ^^
      0