Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TRIE ET FILTRE UNIVERSEL DE REQUÊTES DANS UN FORMULAIRE À PARTIR DE SES CONTRÔLES


Information sur la source

Catégorie :SQL Classé sous : sql, tri, filtre, croissant, décroissant Niveau : Initié Date de création : 31/08/2007 Date de mise à jour : 03/09/2007 07:12:50 Vu / téléchargé: 5 356 / 389

Note :
Aucune note

Commentaire sur cette source (12)
Ajouter un commentaire et/ou une note

Description

Voici un script, composé d'un fichier d'inclusion et d'une page de déclaration de variables, qui permet, par le remplissage de tableaux, d'afficher les résultats d'une requête SQL dans une page web, et de créer un ou plusieurs contrôles radio et/ou menus déroulants de filtres ou de tri par rapport au SQL de départ.

Il peut aussi limiter le nombre de lignes à afficher et insère des liens vers les pages précédentes et suivantes en fonction du nombre de résultats.

Les contrôles peuvent être remplis soit avec un SQL interrogeant la base de données, soit par valeur texte.

Chaque champ de la requête peut être classé par ordre croissant ou décroissant.
 

Conclusion

Un exemple peut être vu sur mon site en cours de développement à l'URL http://www.vipere.lekod.com/Francais/Mondanites.php
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

31 août 2007 06:53:59 :
Oubli de spécifier certaines fonctionnalité de ce mmodule.
31 août 2007 14:10:41 :
Correction d'une faute d'orthographe
31 août 2007 14:13:01 :
Correction d'orthographe
03 septembre 2007 07:12:50 :
Aération et indentation du code.

Commentaires et avis

signaler à un administrateur
Commentaire de kiki2sirom le 31/08/2007 09:58:21

ça sent le code pompé un peu partout sans n'y avoir rien compris
je vais faire qq remarques qualitatives :

* <? ==> <?php : à moins que tu aies appris le PHP avec PHP2, je ne comprends pas ce short_open_tag, pourtant rappelé maintes et maintes fois
* il manque un DOCTYPE
* <form Name="Form1" Method="post">  : ce n'est pas du français c'est de la prog que tu essayes de faire là: <form name="Form1" method="post">
* regarde sur php.net la fonction : mysql_pconnect ==> je ne suis pas convaincu que tu veuilles ici ouvrir une connexion permanente à MySQL
* ne pas faire :
     for($a=0;$a<sizeof($GLOBALS["Boutons"]["Nom"]);$a++)
  mais faire :
     $nb=sizeof($GLOBALS["Boutons"]["Nom"]);
     for($a=0;$a<$nb;$a++)...
   tu vois pourquoi ??
* <option value="10">10</option>
                <option value="20">20</option>
                <option value="30">30</option>
                <option value="40">40</option>
                <option value="50">50</option>
                <option value="60">60</option>
                <option value="70">70</option>
                <option value="80">80</option>
                <option value="90">90</option>
                <option value="100">100</option>
tu pourrais faire du style for ($i=10;$i<=100;$i+=10)...

c'est ma fois, sacrément le bordel le code... après le reste je ne teste pas ,ce n'est pas mon boulot de tester CA
sur ce...
kiki

signaler à un administrateur
Commentaire de 8Tnerolf8 le 31/08/2007 14:23:52

Je n'ai pas pompé ce code, je l'ai élaboré seul à partir de mes neurones.
Quant aux maladresses que tu présentes, il faut savoir :

- Par rapport aux maladresses de syntaxes et d'écriture, je suis autodidacte et de ce fait j'écris comme je peux afin de réaliser mes objectifs.

- Sur mon site en projet, j'ai juste pris un forum que j'ai adapté ensuite à mes besoins.

- Le mysql_pconnect est mis sciemment choisi par rapport à l'exploitation de ma base de données au sein de mon site

- Enfin, par rapport aux balises manquantes, affiche la source du lien que j'ai mis. Le fichier Ma_feuille.php ne contient que les indications nécessaires pour intégrer mon module au sein d'une page PHP contenant d'autres éléments.

Cordialement.

signaler à un administrateur
Commentaire de coucou747 le 31/08/2007 17:35:35

sciemment ? pourquoi persistante cette connexion ?

signaler à un administrateur
Commentaire de codefalse le 31/08/2007 20:50:49 administrateur CS

Essaye de ne pas prendre mal les conseils donnés, ils ne sont pas là pour te descendre, mais pour te conseiller justement. Tu es autodidacte, peut-être, mais apprends aussi a recevoir des autres alors.

Si tu réagis mal, tu n'aura plus de conseils et c'est jamais une bonne chose.

Essaye de voir comment fonctionne PHP5, pourquoi, comme KIKI2SIROM t'a dit, il faut mettre <?php au lieu de <?, faire les fonctions de "comptage" avant les boucles et pas pendant, etc.

Regarde aussi au niveau de l'agencement du code HTML en restant valide W3C (le fait d'être valide W3C, c'est tout simplement pour respecter la sémantique et avoir un code qui respecte un certain standard, qui permettrait à tous les navigateurs d'afficher les mêmes pages (si tous les navigateurs respectaient ce standard...))

Regarde aussi du coté des structures en MVC, qui te sont plus faciles d'acces grace au php5.

Tout ce qui t'es donnée en conseil (par tout le monde), ne fera qu'améliorer ton site

Bien cordialement

signaler à un administrateur
Commentaire de 8Tnerolf8 le 31/08/2007 21:01:04

Je suis en train de développer un jeu en ligne basé sur une base de données où pratiquement chaque page interroge la-dite base.

Sachant qu'une connexion mysql_pconnect ne retente pas une connexion à la base si elle est déja ouverte, afin de soulager mon serveur en process inutiles, du fait de réouvrir la connexion à chaque ouverture de page avec mysql_connect, j'ai pris la décision d'ouvrir une connexion permanente entre chaque joueur et la base de données afin de gagner du temps.

Je me trompe peut être, mais c'est ce que j'ai pu interpréter de la connexion mysql_pconnect.

signaler à un administrateur
Commentaire de 8Tnerolf8 le 31/08/2007 21:16:50

A l'attention de CODEFALSE

Je n'ai pas mal réagi aux propos de KIKI2SIROM et accepte sans soucis les critiques. Ma réponse à cette personne est explicative dans l'optique de faire valoir mon point de vue.

Par contre, je n'accepte guère les attaques gratuites et stériles du style, je cite:
"ça sent le code pompé un peu partout sans n'y avoir rien compris"

"regarde sur php.net la fonction : mysql_pconnect ==> je ne suis pas convaincu que tu veuilles ici ouvrir une connexion permanente à MySQL"

J'accepte que l'on dise "c'est ma fois, sacrément le bordel le code... ". Par contre, que l'on étaye ensuite ce point de vue, dans la courtoisie et l'objectivité.

Je pense que justement, ce type de forum d'exposition de code est là pour présenter des solutions à des personnes afin que ces dernières gagnent du temps, et lorsque l'on peut, proposer des améliorations de l'existant, chose que j'ai fait dans la rubrique Javascript concernant le menu d'Iubito.

J'ai soumis mes scripts PHP dans l'optique d'apporter ma contribution à la communauté et rien d'autre. Si je vois que les retours sont sarcastiques et ne sont que l'expression d'un sentiment de supériorité du confirmé envers le novice, alors, par correction, ayant compris que ce type de forum n'est destiné qu'à être une "cour des grands", je continuerai mon bonhomme de chemin dans la plus parfaite discrétion.

signaler à un administrateur
Commentaire de coucou747 le 31/08/2007 23:33:23

8Tnerolf8, tu as probablement raison, faisons alors une critique plus constructive :
<? c'est vraiment tres mauvais : tu t'en appercevra le jours ou tu feras un php qui cree un xml, rss par exemple...  tu ne pourras pas alors ecrire <?xml ... oblige de faire un echo, ce qui n'est pas forcement propre... pour cette raison, short tags est a off sous php6 et beaucoup de serv php5 :)

pour ton <script language="javascript"> : <script type="text/javascript"> serait plus aux normes

sinon, ton code n'etant pas indente, il devient difficile a lire

signaler à un administrateur
Commentaire de 8Tnerolf8 le 03/09/2007 07:18:17

Merci à coucouc747 et CODEFALSE qui m'ont permis d'améliorer grandement la lisibilité de mon code et d'apporter les modifications précitées que vous pourrez trouver dans le zip mis à jour.

signaler à un administrateur
Commentaire de malalam le 08/09/2007 10:53:15 administrateur CS

Hello,

"Sachant qu'une connexion mysql_pconnect ne retente pas une connexion à la base si elle est déja ouverte, afin de soulager mon serveur en process inutiles, du fait de réouvrir la connexion à chaque ouverture de page avec mysql_connect, j'ai pris la décision d'ouvrir une connexion permanente entre chaque joueur et la base de données afin de gagner du temps."

Tu as bien lu ce qu'était une connexion persistente ? Dans le cadre d'un jeu en ligne, c'est une très mauvaise option, SAUF si tu as suffisemment de connexions pour TOUS tes joueurs.
C'est vraiment le cas...?

signaler à un administrateur
Commentaire de 8Tnerolf8 le 09/09/2007 11:13:01

Bonjour Malalam

Devant tes remarques ajoutées à celle de Coucou747, je me suis à nouveau penché sur cette histoire de mysql_pconnect.

Il faut savoir que j'ai monté mon propre serveur MySQL et que mes appels à la base de données se font en local.

J'ai donc regardé comment se comportaient les connexions permanentes par divers test d'accès à V.I.P.E.R.E.

Il en résulte bien qu'il y a des PID associés pour chaque connexion distante qui restent stockées dans l'éventualité de nouvelles domandes SQL provenant du même PC ayant ouvert la connexion.

Ce que je n'avais pas pensé, et je vous remercie, par vos commentaires, de m'avoir aidé à prendre conscience de la chose, c'est qu'avec des postes en DHCP, il peut y avoir du jour au lendemain plusieurs connexions fantômes qui encombreront mon serveur pour des prunes, sachant que pour chaque IP différente il y a une nouvelle connexion qui s'établira.

Ayant paramétré pour le moment un maximum de 1200 connexions, j'avoue que très vite, avec mysql_pconnect, ça risque de saturer. Je vais donc modifier la source de mon code pour mettre une fonction mysql_connect au lieu de mysql_pconnect.

J'aurais du coup une question à poser. Quand donc utilise-t-on mysql_pconnect ?

signaler à un administrateur
Commentaire de malalam le 09/09/2007 11:37:12 administrateur CS

Quand on contrôle aussi les connexions.
Typiquement, pour des applications au sein d'un intranet, par exemple, où l'on contrôle parfaitement les postes clients.

signaler à un administrateur
Commentaire de 8Tnerolf8 le 10/09/2007 05:53:05

Merci pour ta réponse.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

TRI mySQL [ par ehmarc ] SAlut,J'ai un petit probleme dde tri dans mes bases : j'ai des champs de types varchar qui n'ont que des valeurs monétaires du type 9,22Je voudrai tou php/sql [ par johnmichel57 ] bonjour, voila jai un script mais je n'arrive pas a trouver l'erreur dans ces ligne (erreur parse) if <FONT face="Courier New" color=#008000 size tri d'un array [ par Tartuffe ] Bonjour, j'ai un array qui a cette forme : $variable[0]=(1134, 10, 100, 56) $variable[1]=(1115, 10, 101, 312) $variable[2]=(25, 8, 100, 75) $variabl Tri de résultat sql en suprimmant les doublons. [ par Bowlman ] bonjours,je vous soumet mon problème.J'ai une table MySQL dans laquelle j'ai les villes , codes postaux provinces et pays.j'ai affiché une liste dérou afficher les champs d'un table par id décroissant [ par fornatus ] Bonsoir je viens de tapper ce code :&lt;div class="conteneur"&gt;    &lt;?php          include('menu.htm');  // Nous appelons notre menu    ?&gt;      Croissant / décroissant [ par med93100 ] Bonjour , j'ai plein d'entrer un peu prés 50.. avec des ID différentes Exemple : Fruit1 , Fruit2 , Fruit3 J'aimerais tout simplement que quand un vi Tri dans une base SQL [ par elidris ] Bonjour, il y avait longtemps, ça va ? les vacances bien ?J'aimerais faire une requète dans ma base SQL qui puisse me permettre de ne selectionner que PHP-MYSQL => Tri des entrée selon le mois ou l'année [ par karaemrah ] Bonjour,J'ai une table sous Mysql qui est alimenté en données de vente d'un produit sur ma boutique en PHP.la table s'appelle Vente:Elle a ces champs: Chaîne de caratère avec des apostrophes [ par garat ] Bonjour tout le monde,J'ai migré ma base ACCESS 2003 vers SQL MSDE (version free).La migration des tables s'est bien effectuées et je suis en train de convertir chaine en date [ par habibcode ] salut à tous,j'ai fait une application en php/mysql  et céer un champs date_rv de type varchar mais le problème se passe quand je fait un tri pour aff


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,530 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.