Page 1 sur 1

Simplifier un script

Posté : 25 sept. 2005, 12:44
par Gico
Bonjour j'ai un script sur un bouton qui ouvre un pop up ou un autre selon une condition, le probleme c'est que ma liste de condition s'allonge et je voulais savoir s'il y avait moyen d'en simplifier l'ecriture.

Code : Tout sélectionner

<a href="#" onClick="open_windowfiche('<?php if (($row_rsMclefs['categorieID'] == "11")||($row_rsMclefs['categorieID'] == "12")||($row_rsMclefs['categorieID'] == "13")||($row_rsMclefs['categorieID'] == "14")||($row_rsMclefs['categorieID'] == "15")||($row_rsMclefs['categorieID'] == "16")||($row_rsMclefs['categorieID'] == "22")||($row_rsMclefs['categorieID'] == "23")||($row_rsMclefs['categorieID'] == "27")||($row_rsMclefs['categorieID'] == "28")||($row_rsMclefs['categorieID'] == "29")||($row_rsMclefs['categorieID'] == "30")){echo("fiche2");} else {echo("fiche");} ?>.php?VARarticles=<?php echo $row_rsMclefs['ID']; ?>','ficheArticle','width=481,height=509')"><img src="../imgs_db/<?php echo $row_rsMclefs['vignette']; ?>" alt="" name="vignette" border="0" align="left" /></a>
merci

Posté : 25 sept. 2005, 12:59
par Cyrano
Oui, on peut :
<?php
$cat = array(11, 12, 13, 14, 15, 16, 22, 23, 27, 28, 29, 30);
$fiche = in_array($row_rsMclefs['categorieID'], $cat) ? "fiche2" : "fiche";
?>
<a href="#" onClick="open_windowfiche('<?php echo($fiche); ?>.php?VARarticles=<?php echo $row_rsMclefs['ID']; ?>', 'ficheArticle', 'width=481,height=509')"><img src="../imgs_db/<?php echo $row_rsMclefs['vignette']; ?>" alt="" name="vignette" border="0" align="left" /></a> 
Le truc, c'est que tu mets les valeurs dans un tableau et tu vérifie la présence de la donnée dans ce tableau. Si une nouvelle valeur doit être ajoutée, tu l'ajoutes dans le tableau tout simplement sans toucher au lien lui-même.

Posté : 25 sept. 2005, 13:08
par Gico
Judicieux , merci ça fonctionne