alternative aux if multiples

eru
Eléphanteau du PHP | 39 Messages

28 nov. 2007, 19:11

bonjour,

je me permet de vous demander de l'aide car j'ai beau chercher je n'arrive pas a trouver une réponse satisfaisante au problème suivant (problème de mots clés?):

je dispose d'un script d'affichage d'infobulles (overlib pour ceux qui connaissent), et je souhaite que pour un mot rentré dans les paramètres de fonctions (overlib(text)), une définition apparaisse dans un div.

J'avais donc procédé de la manière suivante (a savoir que la variable text contient le mot clé renvoyé par la fonction):

Code : Tout sélectionner

if(text == 'blabla') {contenu = 'definition blabla';} elseif....
mais cela me paraissait inenvisageable pour de nombreuses définitions (90 if successifs, cela me semble ingérable)

j'ai donc opté pour cette technique :

Code : Tout sélectionner

ztext = new Array; ztext['blabla'] = 'definition blabla'; ztext['Exemple'] = 'aucune, il ne s\'agit que d\'un exemple';
puis j'affiche avec

Code : Tout sélectionner

ztext[text]
Puis j'ai intégré ce script dans phbb3 (ce qui limite donc mes possibilités, notamment celle de passer au php...). Ces deux méthodes fonctionnent, mais j'ai peur que si le nombre de variables augmentent (j'en prévois presque 100) le script ne ralentisse copieusement l'affichage...

Ma question est donc la suivante, existe-t-il une alternative permettant de gérer en quelque sorte une mini bdd, plus fiable que les deux précédentes?

Merci d'avoir pris le temps de lire ce message. :D

ViPHP
AB
ViPHP | 5818 Messages

28 nov. 2007, 19:16

Bah un tableau de 100 lignes ne pose absolument aucun problème :)

eru
Eléphanteau du PHP | 39 Messages

28 nov. 2007, 19:20

ok, bin merci AB,

je sombre dans la paranoïa!! :axe: j'avais peur de surcharger le script et que cela prenne un temps fou pour afficher la page!
Par simple curiosité maintenant, existe-t-il un autre système? le javascript peut-il interagir avec du xml par exemple, ou alors si les informations sont trop nombreuses, le javascript n'est vraiment pas la solution?

merci encore!