TUTORIEL OUTILS 
Afficher des données dynamiques dans un tableau avec DreamWeaver MX 2004
Comment utiliser les fonctionnalités de l'outil Wysiwyg pour construire rapidement et graphiquement un outil de gestion de contenu complet et efficace. (10/12/2004)

Nous avions présenté comment configurer un site sous DreamWeaver MX 2004 pour qu'il accède à une base MySQL au moyen du langage PHP. Nous allons maintenant voir comment ce logiciel permet de mettre en place rapidement des scripts d'affichage, d'insertion, de modification et de suppression de données.

Créez une nouvelle page dynamique PHP, et reliez-la à l'une de vos bases, en suivant le cheminement de l'article sus-cité. Pour notre exemple, nous choisissons une base contenant des données de DVD à louer.

Affichage
Nous allons afficher par exemple, par tranche de 5, les films dans lequel a tourné Sigourney Weaver, dont l'id est 2. Il faut créer le jeu d'enregistrements correspondant. Dans l'onglet Liaison du panneau Application, ajoutez un jeu d'enregistrement (sous le bouton + ). Dans la fenêtre qui s'ouvre, nommez-le FilmsAvecSigourney, lié le jeu à votre connexion (ici, maPremiereConnexion) et cliquez sur Avancé pour entrer notre propre requête SQL :

SELECT dvd_titre, dvd_annee FROM dvd, joue, personalite
WHERE personalite.personalite_id = 2
AND personalite.personalite_id = joue.personalite_id
AND joue.dvd_id = dvd.dvd_id
ORDER BY dvd_annee DESC

Le bouton Test de la fenêtre permet de vérifier que nous allons bien récupérer les données voulues. Validez, vous disposez maintenant d'un jeu avec les données dvd_titre et dvd_annee, qu'il reste à placer dans la page.

Dans le panneau Application, cliquez sur Données dynamiques et choisissez Tableau dynamique. Choisissez bien le jeu FilmsAvecSigourney, précisez que vous voulez 5 enregistrements à la fois, ainsi que les détails cosmétiques du tableau. Validez et DW vous a affiché un tableau prêt à fonctionner. Pour le voir au travail, cliquez sur le bouton Affichage des données dynamiques, situé à droite du trio Code - Fractionner - Création. A vous de changer le titre de chaque colonne, et en faire des entêtes (balise <th>

Il manque un moyen de parcourir les pages si l'on a plus de 5 films. Pour faire rapide, tapez dans la page HTML les textes "page précédente" et "page suivante". Sélectionnez le premier et cliquez sur le bouton Pagination dans le panneau application, pour choisir "Aller à la page précédente". Faites de même pour l'autre texte. Cela vous créé un lien pour chaque situation.

Insertion
Pour mettre en place l'insertion d'une nouvelle personnalité, il faut créer un formulaire avec un champ Nom et un bouton de Validation. Tout ceci est pris en charge par l'Assistant d'insertion, que l'on trouve dans le panneau Application. Choisissez la connexion et la table à compléter, la page d'arrivée, mettez le champ id en tant que champ caché et le champ Nom en tant que champ Texte, donnez l'étiquette, et validez : vous obtenez un formulaire qui fonctionne très bien. Pour les insertions qui nécessitent une requête SQL plus complexe, passez directement par le formulaire Insertion d'enregistrement plutôt que par l'Assistant.

Modification
Nous utiliserons ici encore les formulaires de DW, en l'occurrence Mise à jour d'enregistrement, que l'on trouve à côté du bouton d'insertion dans le panneau Application. La modification peut se résumer à une insertion où l'on connaît déjà l'id de destination. Donc, il nous faut travailler sur des données existantes, et c'est pourquoi l'Assistant de modification demande que l'on lui fournisse un jeu de requêtes d'où tirer la ligne à modifier.

Notre jeu FilmsAvecSigourney est peut être un peu trop complexe pour s'appliquer à un exemple généraliste. Il faut alors créer un jeu plus classique, basé sur une table, par exemple affichant tous les champs de la table personnalite : TousLesActeurs, correspondant à la requête SQL SELECT * FROM personalite.
De là, indiquez la table comportant l'identifiant unique (ici, personnalite_id), que vous précisez en Champ caché plus bas pour s'assurer que l'utilisateur ne le modifie pas. Adaptez ensuite la reste à votre bon vouloir, validez : votre formulaire est prêt à l'emploi.

Délétion
Ici encore, DW se charge de vous faciliter la tâche avec un Assistant bien pensé. Cliquez sur Supprimer l'enregistrement dans le sempiternel panneau Application. L'assistant qui se présente est différent des deux précédents.
Vous devez en premier lieu définir le nom et la provenance de la variable à tester qui indiquera qu'il faut lancer la fonction de suppression, par exemple pour $_POST['effacerActeur'], ce sera Variable de formulaire. Ensuite indiquer la connexion, le jeu et la table à utiliser, la colonne de clefs de la table en question, et le nom ainsi que la provenance de la ligne à effacer (comme $_POST['personnalite_id]). Enfin, la page d'arrivée, logiquement celle affichant les données de la table qui vient d'être manipulée.

  Forum

Réagissez dans les forums de JDN Développeurs

Les fonctionnalités de l'outil de Macromedia vous permettent donc de construire rapidement et simplement des formulaires. Le squelette d'un gestionnaire de contenu complet est ainsi tout à fait envisageable en une heure de temps.

 
Xavier Borderie, JDN Développeurs
 
Accueil | Haut de page
 
 





Quand achetez-vous le plus en ligne ?
Du lundi au vendredi
Le samedi
Le dimanche

Tous les sondages