Ne pas inclure plusieurs fois un même javascript

Résolu
Rorix83 Messages postés 18 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 26 décembre 2008 - 22 avril 2008 à 14:21
Rorix83 Messages postés 18 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 26 décembre 2008 - 24 avril 2008 à 08:53
Bonjour

J'ai un systeme (en PHP) ou j'importe plusieurs éléments differents (principalement d'autres pages php).
La plupart du temps ces pages php utilisent les meme fichiers fonctions javascript, je les ai donc regroupées dans un fichier commun.

Il existe des pages ou je n'utilise aucun éléments et donc je n'ai pas besoin d'apeler ce fichier (sa serait pas drôle sinon :p )
Je cherche donc un moyen de trouver si le fichier à déjà été inclus, ne pas le faire reapeler par un autre élément.

J'ai commencé en creant une variable globae qui teste si tel ou tel fichier à deja été inclus, mais à la longue ce n'est pas propre. En effet si dans chaque élément je dois tester cette variable avant de pouvoir inclure un fichier, ce n'est pas pratique.

J'ai aussi pensé à tester dans le fichier javascript par lui meme s'il avait deja été apelé avec des variables globales, mais sa ne m'inspire pas.

Quelqu'un à t-il deja eu ce genre de probleme, et trouvé une solution viable?

Merci d'avance
Ro

23 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
22 avril 2008 à 16:41
@Rorix, l'idée est là oui.Une fois que ce sera fait, ton code se sentira plus léger ^^
Maintenant je ne suis pas un pro de la programmation objet et je ne connais pas la structure de tes classes, mais passer par des variable globale ne me paraît pas très propre. D'autres pourront mieux répondre que moi là-dessus.

@Nicomilville : ce n'est pas une question d'âge, c'est une question d'expérience. Il y a des personnes plus jeunes et bien meilleures que moi sur ce forum, et je sais quand ne rien dire et les laisser répondre à ma place. Comme je viens de le faire à l'instant pour Rorix. Parce que moi je préfère ne pas induire les gens en erreur plutôt que de dire n'importe quoi. Alors pour l'instant à mon avis tu devrais te contenter de répondre aux questions du genre "Pourquoi ya marqué error: headers already sent ?" et laisser les autres questions pour ceux qui s'y connaissent mieux que toi.
0
Rorix83 Messages postés 18 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 26 décembre 2008
22 avril 2008 à 17:29
@Cephalic : L'architecture est immense, je n'ai pas à la remodifier, meme si je voulais sa prendrais enormement de temps, il faut s'adapter :)

@Evangun : D'accord merci.Concernant la visibilité, j'ai bien quelques idées:
- Le declarer dans un fichier *.php et faire des include à chaque fois (je suis en php4)
- Stocker en XML (je sais que xml, sa fait mini-BD, mais j'en sais tellement peut que je dit sa au hasard, si peut faire penser à quelque chose d'autre.)

Si quelqu'un voit mieux, niveau visibilité php, je suis preneur :)

Merci à tous
Rorix
0
Rorix83 Messages postés 18 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 26 décembre 2008
23 avril 2008 à 09:19
'jour

J'ai une nouvelle idée, je ne sais pas ce qu'elle vaut.
Ne serais t-il pas possible d'initialiser une variable globale propre à chaque fichier de JS COMMUN, et suivant son état de déclarer la fonction.

Je pense un peu à la méthode en C++ lorsque l'on déclare une classe qui ressemble à sa:

#if !defined __MA_CLASSE_H__
#define __MA_CLASSE_H__

//...

#undef

Je n'aurais plus à me soucier de vouloir tester chaque inclusion et tous les fichiers seraient indépedant. La bonne question est : Comment sa pourrait marcher?

Je vais voir si je peut trouver quelque chose à ce sujet.

Rorix
0
Rejoignez-nous