Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
Dreamgratuit - Philosophie
28 janvier 2009

Tri dynamique via les intitulés de colonnes d'un tableau de données – Part 1 Dreamweaver PHP/MySQL

Voici un tutorial que je n'ai pas trouvé sur le web : comment trier la région répétée un tableau en cliquant sur  les titres/entêtes de colonnes avec PHP/MySQL dans Dreamweaver. Je vous livre donc ici ma solution (il est à noter qu'avec une source de données XML, ceci est possible via Spry dans Dreamweaver).

Notre exemple consiste à afficher les données d'une table dont la structure est la suivante :

CREATE TABLE `bibliotheque` (
  `id ` int(11) NOT NULL auto_increment,
  `titre` varchar(250) default NULL,
  `auteur` varchar(100) default NULL,
  `description` varchar(2500) default NULL,
  `editeur` varchar(100) default NULL,
  `cote` text,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

On insère quelques données :

INSERT INTO bibliotheque (id, titre, auteur, description, editeur, cote) VALUES ('', 'Iphigénie','Racine','Théâtre – XVIIe siècle','Larousse','822A-RAC1'), ('', 'La Gloire de mon père','Pagnol','Roman – XXe siècle','Livre de Poche','844B-PAG21'), ('', 'Promets-moi','Coben','Roman – XXIe siècle','Press Pocket','844B-COB7');

Le début est très simple, nous passons donc très rapidement :

- Comportement serveur >> Jeu d'enregistrements : dans l'affichage simple on sélectionne tous les champs et on ne sélectionne aucun critère de tri ni paramètre.

tu01

On affiche la page en mode Code. Repérez le paragraphe :

mysql_select_db($database_maBase, $maConnexion);
$query_Recordset1 = sprintf("SELECT * FROM bibliothèque");
$Recordset1 = mysql_query($query_Recordset1, $maConnexion) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);

Au dessus de ce paragraphe, insérez les lignes suivantes :

// Paramètres de tri
if (isset($_GET['tri'])) {
            $tri = $_GET['tri'];
} else {
            $tri = "auteur";
}

if (isset($_GET['dir'])) {
            $direction = $_GET['dir'];
} else {
            $direction = "ASC";
}


Ces lignes indiquent que si aucun paramètre n'est défini dans l'URL (méthode GET), le tri appliqué par défaut sera le tri par auteur par ordre alphabétique croissant.

Puis modifiez la ligne de la requête SQL comme suit :

$query_Recordset1 = sprintf("SELECT * FROM bibliothèque ORDER BY $tri $direction");

Fin de ce tutorial dans quelques jours...

Quelques mots clés en anglais pour ce tutorial afin que les lecteurs anglophones nous trouvent dans les moteurs de recherche : Tutorial Sort Repeated Region for dynamic table. Sorting columns with Dreamweaver PHP / MySQL. Free tutorial, no extension needed.

2e partie du tutorial : http://dreamgratuit.canalblog.com/archives/2009/02/22/12658873.html

Publicité
Commentaires
J
Bien vue Caro, il existe aussi la solution avec Ajax et un fichier Xml, il y a aussi une extension qui a été developpée à l'époque par InterAkt, que j'avais acheté. Mais ton tuto je vais essayé quand même.<br /> Au fait il y a une suite aux fondamentaux :<br /> http://www.asp-php.net/tutorial/asp-php/dreamweaver-les-fondamentaux-part2.php
Archives
Publicité
Publicité