-
    Techniques et conseils

Note: L'ensemble des "Tips of the Week" de l'éditeur OmniPilot sont régulièrement traduits chaque semaine. Vous les retrouvez ci-après

LISTE DES TUTORIAUX

Formatage de nombres et calculs FileMaker Pro sous Lasso

Passer facilement de FileMaker Pro CDML à Lasso Professional 8

Outil de Maintenance MySQL

Indicateur de progression - Progress bar

Uploads de fichiers sous Lasso Professional 8

Utilisation des arrays pour la création d'inlines dynamiques

Balises de gestion du Cache

Méthodes d'appel des balises

Encryption de données

Notions de Sessions

Gestion des erreurs

Pages d'erreur customisées

Variables globales

Optimisations de MySQL

Symboles d'assignation mathématiques

Expression régulières (Nettoyage du texte)

Expressions régulières (Rechercher/remplacer)

Expressions régulières (principes de base)

Optimisez votre code HTML en utilisant les balises [Loop] et [Iterate]

Utilisation des boucles (Loops)

Utilisation de la balise [Action_Params]

Techniques de commentaires


     
Blueworld, Windows Server 2003, Windows XP, RedHat, Linux, Mac OS X, MACOS, Apache, MySQL, FIlemaker Pro

Edité par OmniPilot Software, Lasso Professional fonctionne sous Windows 2000/2003/XP et Linux RedHat et Apache Server - Il s'intègre parfaitement à MySQL™ et FileMaker Pro™ ainsi que toutes autres bases de données
     




Déposez votre nom de domaine avec ELIDEE

Sujet: Variables globales

Résumé: Cet article discute de l'usage des variables globales pour partager des données entre plusieurs pages d'un site web.

Détail:
Lasso Professional 7 dispose de trois types de variables différentes. La plus familière est appelée variable de page. Ce type de variable est créée et accédée depuis une seule page Lasso. Les variables locales (local) sont créées et utilisées au sein de custom tags ou dans des expressions composées. Enfin, les variables globales peuvent être créées sur n'importe quel page sur un serveur et accédées par n'importe quelle autre page.

Cet article discute des variables globales (global) et de leur utilisation pour partager des données entre plusieurs pages d'un site.

Portée d'une variable

Chaque variable dans Lasso Professional 7 dispose d'une portée: global, page ou local. Cette portée détermine comment elle peut être accédée.

Global - Les variables Global sont partagées par toutes les pages chargées depuis un serveur Lasso. N'importe quelle page sur le serveur peut créer une variable globale et n'importe quelle page peut accéder aux données qui y sont stockées. Les variables globales sont créées en utilisant la balise [Global]. Une liste de toutes les variables globales disponibles et paramétrées peut être affichée par l'utilisation de [Globals->Keys].

Page - Les variables de Page sont le type le plus commun des variables utilisées sous Lasso. Toutes les variables de page sont supprimées aussitôt que la page a été procédée par Lasso. Les variables de pages ne peuvent donc pas être accédées depuis aucune autre page sur le serveur Lasso. Les variables de pages peuvent être créées en utilisant la balise [Var]. Elles peuvent également être référencées en utilisant le symbole $. Une liste de toutes les variables de pages disponibles peut être affichée en utilisant [Vars->Keys].

Local - Les variables Local peuvent être créées et accédées uniquement dans un custom tag ou dans des expressions composées. L'usage des variables locales est décrit dans le manuel "Extending Lasso Guide". Les variables locales peuvent être créées en utilisant la balise [Local]. Elles peuvent également être rappelées et référencées en utilisant le symbole #. Une liste des variables locales disponibles peut être affichée en utilisant [Locals->Keys].

Balises de variables Globales

Les variables globales sont créées de deux manières. Elles peuvent être créées dans une page .lasso placée dans le dossier LassoStartup en utilisant la balise [Global]. Si une valeur doit persister au redémarrage de Lasso Service alors elle doit être précisée comme variable globale dans LassoStartup

[Global: 'ex_myglobal' = 'Ma Valeur Globale!']

Une fois que Lasso a démarré, les variables globales peuvent être créées à n'importe quel moment en utilisant la balise [Global]. Aussitôt créée, une variable globale sera accessible depuis toutes les autres pages chargées par Lasso Service.

[Global: 'ex_mynewglobal' = 'Ma Nouvelle Valeur Globale']

La valeur d'une variable globale peut être retrouvée en utilisant la balise [Global] sur n'importe quelle page. L'utilisation de la balise [Global] vous assure que la valeur de la variable globale sera retrouvée. Le raccourci $ peut également être utilisé pour afficher ou se référer à une variable globale. Cependant, le raccourci $ vérifiera en premier lieu s'il existe une variable de page du même nom, il vérifiera ensuite l'existence d'une variable globale de ce nom. Ainsi si une variable de page porte le même nom qu'une variable globale un résultat inattendu peut se produire.

[Global: 'ex_myglobal']

$ex_myglobal

La balise [Global_Defined] peut être utilisée pour vérifier qu'une variable globale a déjà été définie. Ceci est utile de manière à permettre d'établir une valeur par défaut à une valeur pour une variable globale.

[Global_Defined: 'ex_myglobal']

La balise [Globals] peut être utilisée pour lister toutes les variables globales définies dans Lasso. La balise [Globals] retourne un map contenant toutes les variables globales définies. [Globals->Keys] quant à elle renvoit un array comportant juste les noms des variables globales définies.

[Globals->Keys]

Finalement la balise [Global_Remove] peut être utilisée pour retirer une variable globale qui avait été préalablement définie. La valeur associée à la variable globale sera perdue et ne pourra être retrouvée sur aucune page.

[Global_Remove: 'ex_mynewglobal']


Exemple d'utilisation

A quoi bon pourriez-vous utiliser des variables globales? Elles seront utiles à chaque fois que vous avez une valeur que vous voulez pouvoir changer dynamiquement, mais dont la valeur doit être la même quelle que soit la page du site qui est appelée. Il s'agit de choses que l'on utilise souvent au travers d'includes; mais ce sera plus simple d'utiliser une variable globale qu'un include pour quelques valeurs simples.

Message du jour

Par exemple, vous pourriez avoir besoin d'un message du jour que vous souhaiteriez pouvoir afficher sur votre site. Vous pouvez paramétrer un message du jour par le code suivant:

[Global: 'monsite_mdj' = 'Désolé pour la coupure, mise à jour du site']

Enfin, sur chaque page du site où il est approprié d'afficher le message du jour ce dernier s'affichera automatiquement.

[If: (Global_Defined: 'monsite_mdj')]
  [Global: 'monsite_mdj']
[/If]

D'une manière similaire, le titre d'un site, la couleur de fond ainsi que tout nombre ou attributs peuvent être paramétrés par l'utilisation de variables globales. Tout changement fait sur une variable globale sera instantanément reflété sur toutes les pages du sites à leur prochain chargement.

Compteur de site

Un compteur très simple peut être créé en utilisant des variables globales. Ce compteur est très simple à implémenter mais le côté négatif sera qu'il n'enregistre que le nombre de fois qu'une page est chargée depuis le redémarrage de Lasso Service.

[If: !(Global_Defined: 'monsite_compteur')]
  [Global: 'monsite_compteur' = 1]
[Else]
  [Global: 'monsite_compteur' = (Integer: (Global: 'monsite_compteur')) + 1]
[/If]

Cette page a été chargée [Global: 'monsite_compteur'] fois!


Variables globales intégrées (built-in Globals)

Lasso utilise plusieurs variables globales intégrées pour stocker des paramètres qui sont essentiels au fonctionnement de Lasso Service. Aucune de ces variables globales pre-existantes ne devrait être modifiée ou supprimée.


Serveurs partagés

Un soin particulier devrait être pris lors de l'utilisation des variables globales sur un serveur partagé (co-hébergement de plusieurs sites web différents). Il est recommandé que toute variable globale qui sera créée comprenne un nom unique comme préfixe qui identifie le site qui y fait appel. Par exemple pour un site http://www.omnipilot.com/, le nom des variables globales pourrait commencer par "omnipilot_". Ceci permettra de s'assurer que deux sites n'utiliserons jamais accidentellement les mêmes noms de variables globales et n'écraserons pas les valeurs de l'autre.

Ainsi, il doit être noté que les valeurs stockées dans des variables globales ne sont pas privées et sont accessibles à tous les utilisateurs d'un même serveur. Il est ainsi possible pour un autre développeur sur le même serveur d'accéder à n'importe quelle valeur d'une variable globale stockée sur ce serveur. Pour cette raison ne stockez jamais des mots de passe, numéros de cartes de crédit et de manière générale toute information sensible de cette manière.


Sécurité des Threads

Lasso ne fournit pas une sécurité des Threads automatique pour un site qui utilise des variables globales. Ainsi une simple utilisation des variables globales est sûr mais des opérations complexes impliquant des customs types ou des expressions complexes de types de données stockées dans des variables globales peuvent conduire à des erreurs de sécurité sur des threads.

Lasso fournit un jeu complet de verrous (locks), de semaphores et d'autres outils qui peuvent être utilisés pour arbitrer l'accès à des variables globales. Une documentation sur ces outils est disponible dans le manuel Extending Lasso Guide et pourrons être le sujet d'un prochain article.



Plus d'informations

Plus d'informations peuvent être trouvés à propos de ces balises dans le Lasso 7 Language Guide ou en ligne sur LDML 7 Reference.

Produit:    Lasso Professional
Plateformes:    Mac OS X, Windows 2000, Windows XP, Windows 2003, Red Hat Linux
Version:    7.x
Auteur:    Fletcher Sandbeck - Omnipilot


     
Retour accueil
Lasso Studio
Lasso Professional
Communiqués Presse
Tutoriaux
Lasso & Filemaker
Evaluation gratuite
Hébergement Lasso/MySQL
Revendeurs
Historique logiciel
Tarifs - Commander
Nous contacter
     

Notre numéro de téléphone : +33 5 57 22 89 35

Hébergement mutualisé Lasso




Hébergement et location de baies de serveurs et Transit IP par ELIDEE


-  Accueil  -  Développer avec Lasso Studio  -  Déployer avec Lasso Professional  --
Administration du site webmaster@elidee.com | Copyright 2004-2010, Elidée SARL. Tous droits réservés
Toutes les marques citées sont déposées par leur propriétaire respectif