Creer une fonction

Résolu/Fermé
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 - 6 févr. 2013 à 09:34
 Profil bloqué - 6 févr. 2013 à 10:38
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

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
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 3
6 févr. 2013 à 09:41
Merci pour ta réponse.
La variable en argument doit être identique à la variable du résultat de la requête ?
0
<?php
function color ($sec) {
	if($sec == "G 12") {
		$color = "#FFFF00";
	} else {
		$color = "";
	}
	return $color;
}
echo color($secA);
?>
0
Profil bloqué
6 févr. 2013 à 09:43
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
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 3
6 févr. 2013 à 09:51
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Profil bloqué
6 févr. 2013 à 09:55
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
ton <td style=\"background-color: ".$color.";\"> est dans une balise PHP ou HTML ?
0
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 3
6 févr. 2013 à 10:03
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
Profil bloqué
6 févr. 2013 à 10:16
Tu peux copier coller le code de ta page entiere stp ? Avec le tableau et tout merci
0
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 3
6 févr. 2013 à 10:22
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
chedar Messages postés 99 Date d'inscription mardi 29 janvier 2013 Statut Membre Dernière intervention 14 avril 2013 3
6 févr. 2013 à 10:28
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