Creer une fonction

Résolu
chedar Messages postés 106 Statut Membre -  
 Profil bloqué -
Bonjour,

Je voudrais que la couleur d'une case de mon tableau change en fonction du secteur qu'il retourne.

J'ai fais cette fonction : function color (sec) {
if (sec == "G 12"){
$color = "#FFFF00";
}
else {
$color = "";
}
return $color;
}

et je l'appel avec :
function color($secA);

Mais il ne se passe rien, pouvez-vous m'aider svp

5 réponses

  1. ReDLoG
     
    Bonjour,

    Normalement tu devrais avoir une variable $sec dans ta fonction et non pas sec tout court. Cette syntaxe est celle d'une fonction javascript.
    0
  2. chedar Messages postés 106 Statut Membre 3
     
    Merci pour ta réponse.
    La variable en argument doit être identique à la variable du résultat de la requête ?
    0
    1. ReDLoG
       
      <?php
      function color ($sec) {
      	if($sec == "G 12") {
      		$color = "#FFFF00";
      	} else {
      		$color = "";
      	}
      	return $color;
      }
      echo color($secA);
      ?>
      0
  3. Profil bloqué
     
    salut faut faire ca :

    J'ai fais cette fonction : function color ($sec) {
    if ($sec == "G 12"){
    $color = "#FFFF00";
    }
    else {
    $color = "";
    }
    return $color;
    }

    l'appeler avec :
    echo color("G 12");
    0
  4. chedar Messages postés 106 Statut Membre 3
     
    function color ($sec) {
    if($sec == "G 12") {
    $color = "#FFFF00";
    } else {
    $color = "#FF0000";
    }
    return $color;
    }

    echo color($secA);

    <td style=\"background-color: ".$color.";\">

    Ca devrait me mettre la couleur la non ? Parce que du coup mon tableau ne s'affiche plus du tout
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Profil bloqué
     
    remplace
    echo color($secA);

    <td style=\"background-color: ".$color.";\">

    par

    <td style=\"background-color: ". echo color("red").";\">

    apres je vois pas où est ton echo
    a adapter donc..
    0
    1. Profil bloqué
       
      ton <td style=\"background-color: ".$color.";\"> est dans une balise PHP ou HTML ?
      0
    2. chedar Messages postés 106 Statut Membre 3
       
      Dans une balise php mais il n'y a pas de problème la dessus.

      Sans fonction, ca marche :
      if ($secA == "G 04") {
      $color = "#FFFF00 ";}
      elseif ($secA == "G 06"){
      $color = "#99FF32 ";}
      elseif ($secA == "G 07"){
      $color = "#00FFFF ";}
      elseif ($secA == "G 08"){
      $color = "#FFCC00 ";}
      elseif ($secA == "G 09"){
      $color = "#FF32CB ";}
      else {
      $color = "#FFCB99 ";}


      Mais avec fonction ca marche pas :
      function color ($sec) {
      if ($secA == "G 04") {
      $color = "#FFFF00 ";}
      elseif ($secA == "G 06"){
      $color = "#99FF32 ";}
      elseif ($secA == "G 07"){
      $color = "#00FFFF ";}
      elseif ($secA == "G 08"){
      $color = "#FFCC00 ";}
      elseif ($secA == "G 09"){
      $color = "#FF32CB ";}
      else {
      $color = "#FFCB99 ";}
      return $color;
      }

      echo color($secA);



      Affichage : <td style=\"background-color: ".$color.";\">".$secA."</td>
      0
    3. Profil bloqué
       
      Tu peux copier coller le code de ta page entiere stp ? Avec le tableau et tout merci
      0
    4. chedar Messages postés 106 Statut Membre 3
       
      if ( $ville != null ){

      (fonction désactivée le temps du problème)
      _______________________________________________________________________
      // function color ($sec) {
      // if ($secA == "G 04") {
      // $color = "#FFFF00 ";}
      // elseif ($secA == "G 06"){
      // $color = "#99FF32 ";}
      // elseif ($secA == "G 07"){
      // $color = "#00FFFF ";}
      // elseif ($secA == "G 08"){
      // $color = "#FFCC00 ";}
      // elseif ($secA == "G 09"){
      // $color = "#FF32CB ";}
      // else {
      // $color = "#FFCB99 ";}
      // return $color;
      // }

      // echo color($secA);

      _______________________________________________________________________

      if ($secA == "G 04") {
      $colorA = "#FFFF00 ";
      }
      elseif ($secA == "G 06"){
      $colorA = "#99FF32 ";
      }
      elseif ($secA == "G 07"){
      $colorA = "#00FFFF ";
      }
      elseif ($secA == "G 08"){
      $colorA = "#FFCC00 ";
      }
      elseif ($secA == "G 09"){
      $colorA = "#FF32CB ";
      }
      else {
      $colorA = "#FFCB99 ";
      }

      if ($secE == "I02") {
      $colorE = "#F7A786";
      }
      elseif ($secE == "I03") {
      $colorE = "#E9F471";
      }
      else {
      $colorE = "#CBDCEC";
      }


      echo "var oDiv = document.getElementById('resultatville');";
      echo "oDiv.innerHTML = '<table border align=\"center\" width=\"910px\" height=\"150px\"><tr><th colspan = 4>".$ville."</th></tr><tr><td width=\"225\" rowspan = 2><img width=\"128\" height=\"150\" border=\"0\" src=\"img/carteadulte1.JPG\"></td><td width=\"227\" >Adulte</td><td width=\"228\" rowspan = 2><img width=\"125\" height=\"150\" border=\"0\" src=\"img/carteenfant1.JPG\"><td font-color=\"blue\" width=\"227\">Enfant</td></tr><td <td style=\"background-color: ".$colorA.";\">".$secA."</td><td style=\"background-color: ".$colorE.";\">".$secE."</td></tr></table>'";

      }


      Comme ca, ca marche tres bien pourtant
      0
    5. chedar Messages postés 106 Statut Membre 3
       
      Au pire je vais faire sans fonction, j'aurais juste un peu de code en plus sachant qu'il faut réaliser l'opération 4 fois mais ca va le faire quand même.

      Merci beaucoup pour votre aide en tout cas ;)
      0