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

kiki2sirom Messages postés 153 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 23 décembre 2010 - 31 août 2007 à 09:58
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009 - 10 sept. 2007 à 05:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43930-trie-et-filtre-universel-de-requetes-dans-un-formulaire-a-partir-de-ses-controles

cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
10 sept. 2007 à 05:53
Merci pour ta réponse.
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 sept. 2007 à 11:37
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.
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
9 sept. 2007 à 11:13
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 ?
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
8 sept. 2007 à 10:53
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...?
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
3 sept. 2007 à 07:18
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.
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
31 août 2007 à 23:33
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
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
31 août 2007 à 21:16
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.
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
31 août 2007 à 21:01
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.
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
31 août 2007 à 20:50
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
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
31 août 2007 à 17:35
sciemment ? pourquoi persistante cette connexion ?
cs_8Tnerolf8 Messages postés 30 Date d'inscription vendredi 25 novembre 2005 Statut Membre Dernière intervention 17 novembre 2009
31 août 2007 à 14:23
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.
kiki2sirom Messages postés 153 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 23 décembre 2010
31 août 2007 à 09:58
ç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
Rejoignez-nous