Trier vos donnees en cliquant sur les entetes de colonnes

Soyez le premier à donner votre avis sur cette source.

Vue 7 500 fois - Téléchargée 833 fois

Description

Triez vos données en cliquant sur les entetes de colonnes (Juin 2004)
------------------------------------------------------------------------------

En surfant sur un site j'ai vu que les concepteurs avaient mis des liens
sur les entetes de colonnes (Nom des colonnes) afin de renvoyer la page et de reafficher celle ci diffrement.....
Les donnees bien sur...

J'ai trouve ce systeme plaisant...

J'ai donc décide de mettre cela en oeuvre...

ceci n'est q'un p'tit exemple....cela vous aidera peut etre
dans vos futurs dev...

voila vous trouverez tout ds le .zip

index.php => page principale
connection.php3 => Connection a la base
forme.php => Mise en forme
database.txt => structure de la base

Source / Exemple :


<html>
<head>
<title>-Trier vos donnees en cliquant sur les entetes de colonnes(Juin 2004)-</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?
//MISE EN FORME
include("forme.php");

//CONNECTION
include("connection.php3");

?>

<br><div align="center"><table width="60%" align="center" style="border: 1 solid #CBCBCB">
  </div>
</div>
<tr bgcolor="CCCCCC">
  <td class="intitule" width="12%"><B><font size="1"><center><a href = "index.php?ordre=nom">Nom du clients :</a></center></font></B></td>
  <td class="intitule" width="22%"><B><font size="1"><center><a href = "index.php?ordre=email">Adresse E-mail :</a></center></font></B></td>
 </tr>
<?php
/* Evite le message de variables non initialisée */
error_reporting(E_ALL ^ E_NOTICE);

//ORDRE POUR REQUETE SQL	
$ordre = $_GET['ordre'];
 
  if (!isset($ordre)) $ordre='nom';
   echo "<BR>Vous triez sur => " . $ordre;	

//REQUETE SQL
$sql = "select ID, nom, email from clients ORDER by $ordre";

//EXECUTE REQUETE
$resultat = mysql_query ($sql);

//NBRE DE LIGNES DS LA TABLE
$nblignes = mysql_num_rows($resultat); 

//affichage de nblignes
echo "<div align=center><font face=Verdana, Arial, Helvetica, sans-serif size=1>-Il y'a actuellement <B><$nblignes></b> Clients-</font></div>";
echo"<br>";

//BOUCLE
$i = 0;
while ($cl = mysql_fetch_array ($resultat))
{
//COULEUR
$couleur = "#CCCCCC";
$i++;

	if ($i % 2 ==1)
	{
	$couleur = "#FFFFFF";
	}
  $no  = $cl['nom'];
  $ad  = $cl['email'];
  
  echo "<tr BGCOLOR=$couleur>";
  echo "<td><font size=2>$no</font></td>";
  echo "<td><font size=2>$ad</font></td>";
  echo "</tr>";
}

echo "</table>";

//FERME LA CONNECTION
mysql_close()

?>
<br>
<a href ="http://membres.lycos.fr/annmysql/">- Source pour débutant - </a>
</body>
</html>

Conclusion :


Enjoy

Jimmy

http://membres.lycos.fr/annmysql/

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_lilj
Messages postés
204
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
1 avril 2012
5 -
Salut,
merci pour ce code.
Mais j'ai une question pour toi : comment ajouter une pagination en même temps ? (si c'est possible)
dam24
Messages postés
1
Date d'inscription
lundi 25 décembre 2000
Statut
Membre
Dernière intervention
28 octobre 2008
-
Merci!
cs_gege217
Messages postés
40
Date d'inscription
jeudi 23 janvier 2003
Statut
Membre
Dernière intervention
13 août 2008
-
Excusez moi, le post que j'ai fais concerné une autre source....
Toutes mes confuses...

Sinon un truc pour le trie des colonnes : je sais qu'il existe une source sur le trie de tableau HTML en JS mais qui ne marche que sur IE malheureusement....
L'avantage, c'est que tout se passe en local et tu fais pas d'accès serveur et traitement pour réafficher les mêmes résultats.
Ca peut être sympa...

> jimmy69 > j'étais étudiant... maintenant je suis payé pour code en PHP... ;-)

.oOMimiLOo.
cs_jimmy69
Messages postés
787
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
27 novembre 2008
-
salut salut galadriann,

AHHH Oui super de mettre un tri croissant et decroissant je n'y avait pas pense !

Bonne idée ...je vais mettre cela en application cet apres midi ...

bon dev...galadriann

A bientot ciao
galadriann
Messages postés
87
Date d'inscription
mercredi 7 mai 2003
Statut
Membre
Dernière intervention
12 juin 2006
-
Salut,

Le lien sur la colonne avec rappel de la meme page est classique. Perso j'ajoute toujours 2 autres liens sur le nom du champs (1 fleche vers le haut et une fleche vers le bas), permettant ainsi un tri croissant out decroissant... pratique pour voir les derniers enregistrements sans avoir a browser toute la page... j'utilse un moteur de template pour afficher l'html maia en gros on passe ajoute juste un parametre au lien pour faire le tri.
if (exist($tri) $sort_order "SORT $tri" else $sort_order"";
ensuite le select " select * from table $sort_order"

sinon pas mal ...

ciao

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.