IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Optimisation de chargement d'une page qui contient 600 requêtes SQL


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 138
    Points : 55
    Points
    55
    Par défaut Optimisation de chargement d'une page qui contient 600 requêtes SQL
    Bonjour à tous,

    Je suis en train de faire le développement d'un système de gestion de court de tennis. Le système contient 11 courts de tennis et peut être réserver toutes les 15 minutes de 7h à 22h.

    Ce qui veut dire que pour chaque terrain et pour chaque 15 minutes, je dois contrôler si le terrain est déjà réserver ou pas et l'afficher d'une certaine couleur si réserver ou pas et lui donner des droits d'interaction qui dépende de la personne connecté.

    Pour résumé, sur ma page j'ai 11 terrains * 14 heures * 4 possibilités par heure = 616 requêtes sur la BDD !!!!!!!!!!

    Vous vous rendez bien compte que la vitesse doit s'en ressentir.

    Pour vous en rendre comptes, vous pouvez le tester sur : http://www.cs-maisonnex.ch

    Ma question est : "Est-il possible d'afficher la page au fur et à mesure que les requêtes soit exécutées ?"

    J'ai déjà testé de faire du cache mais cela ne me convient pas car la page change trop souvent pour que cela soit efficace.

    Merci d'avance pour votre aide

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 27
    Points
    27
    Par défaut
    Bonjour,

    Quel est l'intérêt de faire 600 requêtes de type Boolean ?
    En SQL, on peut récupérer en 1 seule requête tous les courts réservés groupés par 1/4 heures et par N° de courts dans un ResultSet.
    SELECT champs WHERE condition GROUP BY 1/4 H AND N° de court
    Puis en PHP, utiliser le Result comme un tableau.

    Le fur et a mesure, oui avec ajax, ça complique le code PHP par contre.

    Fobec

  3. #3
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Oui, tu fais une seule requête qui en simplifiant à l'extrême peut être juste un select de tes champs 1/4 heure, courts et tu as tout ainsi, reste ensuite à boucler sur tes résultats pour construire ton tableau et le tour est joué

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 138
    Points : 55
    Points
    55
    Par défaut
    Merci je vais tester ca.... je sais avec une requête c'est possible mais cela change pas la problème de la recherche dans le tableau qui est construit prend beaucoup de temps aussi non?

  5. #5
    Membre éprouvé
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Points : 1 066
    Points
    1 066
    Par défaut
    Une recherche sur un tableau de 600 entrées, ça ne prendra pas bcp de temps, non.
    Et quoi qu'il en soit, tu économiseras le traffic vers et depuis la base de données, ainsi que pleins d'accès aux fichiers.

    Mais il y a surement une meilleure manière de faire que 600 recherches dans un tableau.
    Si tu ne prends que ce qui est réservé dans ton tableau, et que tu le tries par date, par exemple...

Discussions similaires

  1. Réponses: 4
    Dernier message: 11/05/2007, 12h02
  2. Recharger une page qui contient un recordset
    Par zooffy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 10/05/2007, 14h35
  3. Réponses: 15
    Dernier message: 05/09/2006, 12h08
  4. comment faire une redirection vers une page qui contient des framsets
    Par zana74 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 31/08/2006, 13h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo