|
Pages 1 | 2
L'on associe souvent la technologie Flash de Macromedia
à de belles animations présentes sur les pages web.
Certaines animations riment avec applications; ce sont en effet
parfois de véritables jeux auxquels nous sommes invités
à participer.
Les animations Flash sont peut-être moins connues pour leur
capacité à pouvoir échanger de l'information
avec l'extérieur, fichiers ou scripts côté
serveur. Pourtant ces flux d'informations peuvent s'effecteur dans
les deux sens, du flash vers un script (Php ou autre) ou l'inverse.
Nous allons tenter aujourd'hui de visualiser dans une animation
Flash des données issues d'un script Php. Nous verrons que
pour le programmeur Php et néophyte en Flash, la difficulté
ne provient pas du script Php mais plutôt du côté
Flash. Il faut en effet se familiariser avec l'interface utilisée
pour la création de ces animations et en comprendre quelques
rudiments.
Précisons que si nous utilisons Php ici, d'autres langages
côté serveur sont susceptibles d'effectuer le même
travail (rudimentaire nous le verrons).
Notre tutoriel se base sur la dernière version du logiciel
de Macromedia : Flash 5. Si vous ne le possédez pas, et souhaitez
reproduire les étapes qui vont suivre, une version
limitée à 30 jours est disponible sur le site
de l'éditeur.
But et principe
Nous nous appuyons aujourd'hui sur une table SQL issue d'un tutoriel
précédent "Les
commandes de sélection en SQL". Il s'agissait d'afficher
différentes caractéristiques de plusieurs consoles
de jeux. Une table "consoles" avait été
créee pour l'occasion, elle contient les champs suivants
:
- Nom
- Prix
- Fabricant
Si vous souhaitez vous construire la même table, il suffit
de copier les scripts de création et d'insertion disponibles
sur le tutoriel indiqué ci-dessus.
Le but de notre animation flash sera de nous afficher quelle est
la console la plus chère de la table "consoles",
le tout bien sûr dynamiquement.
Ce mode de fonctionnement peut s'avérer très utile
pour une animation Flash référençant plusieurs
prix par exemple, ces derniers sont en effet susceptibles d'évoluer.
Avec notre méthode, il vous suffit de mettre à jour
la base de données pour que l'animation répercute
également ce changement.
Comme précisé en introduction, la partie propre au
Php est classique. Il va s'agir de déterminer en interrogeant
la base de données quelle est la console la plus chère.
Du côté du Php
Liquidons rapidement le cas du Php, ce n'est pas lui le sujet principal
aujourd'hui.
Nous avons déjà rencontré plusieurs fois
ce type de script. Si ça n'est pas le cas pour vous,
vous trouverez votre bonheur dans notre rubrique
de tutoriels dédiée à ce langage.
Voici à quoi va ressembler notre script. Nous passons sous
silence la phase de connexion à votre base, dont les paramètres
dépendent bien évidemment de votre compte personnel
chez votre hébergeur mais également de sa charte de
nommage pour en ce qui concerne les bases de données ("sql.mabase",
"mabase_db"...).
(find_console.php)
$req="select nom, fabricant from consoles
order by prix desc limit 0, 1";
$idreq=mysql_query($req,$db);
while ($row=mysql_fetch_array($idreq))
{
$console = $row[nom];
$fabricant = $row[fabricant];
}
$console_flash="$console de $fabricant";
$console_flash=rawurlencode($console_flash);
$console_flash="console=".$console_flash;
echo "$console_flash";
mysql_free_result($idreq);
Détaillons en quelques mots les effets de ce script. La
requête ramène un tuple unique représentant
notre console la plus chère (c'est un exemple basique, nous
ne gérons pas l'éventualité de deux consoles
au même prix).
Nous récupérons dans les variables $console et $fabricant
respectivement le nom de la console et celui du fabricant. Nous
formons une chaîne de caractères à partir de
ces deux noms en rajoutant l'article "de" entre les deux
:
$console_flash="$console de $fabricant";
Nous encodons ensuite grâce à la fonction rawurlencode
le contenu de notre chaîne de caractères. Cela a pour
but de protéger celle-ci lors du transfert, les caractères
spéciaux sont ici "neutralisés". Exemple,
un espace devient un "%20" avec cette fonction.
La ligne...
$console_flash="console=".$console_flash;
... Mérite quelques explications. Flash s'attend à
recevoir d'une part une réponse encodée et d'autre
part de la forme suivante :
prenom=arnaud&nom=gadal
ou bien
prenom=arnaud
&nom=gadal
Nous définissons la variable $console_flash comme la concaténation
entre la chaîne "console=" (qui sera notre identificateur
pour Flash, nous le verrons par la suite) et la chaîne déjà
définie dans l'étape précédente par
l'instruction :
$console_flash=rawurlencode($console_flash);
Le résultat de ce script est visible
en ligne. Voilà donc concrètement la chaîne
de caractères à laquelle notre animation Flash accèdera.
En cliquant sur le lien ci-dessus, vous pourrez lire en avant-première
le contenu dynamique ramené de la base, à savoir la
console la plus chère, celle-la même que nous cherchons
à afficher dans notre animation.
Passons à l'étape suivante.
Pages 1 | 2
|