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

PHP & Base de données Discussion :

Lenteur serveur local


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2014
    Messages : 24
    Points : 16
    Points
    16
    Par défaut Lenteur serveur local
    Bonjour à tous,

    J'ai installé easyphp 5.3.9 (j'ai essayé deux fois, j'ai installé aussi devserveur 14.1 VC11, deux fois également) - en parallèle de mon ancienne version 1-8, de façon à me mettre à jour au niveau de ma version de développement de php, maintenant en 5.6.
    Ps : je ne les lance pas tous en même temps, évidemment, et j'utilise easy-php depuis 8 ans, je suis une habituée.

    Je remarque des lenteurs qui m'empêchent de travailler en local (localhost ou 127.0.0.1, bien que ce dernier semble un peu moins lent).
    sur mon seurveur ovh ça fonctionne normalement, mais en local j'ai un message : "Fatal error: Maximum execution time of 30 seconds exceeded in G:\Program Files\EasyPHP-DevServer-14.1VC11\data\localweb\projects\xxx\www\admin\Connections\client.php on line 2"

    J'ai regardé les autres discussions sur ce sujet, je ne souhaite pas configurer mon serveur local pour accepter plus de temps que les 30 secondes allouées, mais comprendre pourquoi il faut tant de temps pour afficher ma page.
    En lançant mon ancien easyphp (le 1-8) la requête s'effectue instantanément. Ma base de donnée est petite (moins de 100 lignes).

    Quel est votre avis ? avez-vous rencontré ce problème ?

    Avec mes remerciements,

    PF.

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur BackEnd - FrontEnd
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur BackEnd - FrontEnd
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 136
    Points
    136
    Par défaut
    Pardonnes moi de te poser cette question mais as tu dans ton code des boucles d'affichage de données ?

    Par expérience j'avais le même souci que toi mais je me suis rendu compte qu'une erreur de code de boucle me foutait mon serveur en vrac.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2014
    Messages : 24
    Points : 16
    Points
    16
    Par défaut
    Bonjour double-m,

    Le problème se pose pour tous mes sites, mes requêtes sont construites comme celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $res = $client->query("SELECT lieu, nom FROM comptes");
    while ($row = $res->fetch_assoc()) {
       echo " lieu : " . $row['lieu'] . "\n";
    }
    Y a t'il mieux ?

    Sur le serveur ovh tout va bien, et mes sites fonctionnent également rapidement avec easyphp 1-8 en local

    Merci de ton aide

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur BackEnd - FrontEnd
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur BackEnd - FrontEnd
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 136
    Points
    136
    Par défaut
    A la fin de ta (tes) requêtes tu fais bien un "mysqli_close($connexion)" ?

  5. #5
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2014
    Messages : 24
    Points : 16
    Points
    16
    Par défaut
    oh....

    Il faut que je le mette à chaque requête, ou, comme avant, une seule fois en fin de page ?

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur BackEnd - FrontEnd
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur BackEnd - FrontEnd
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 136
    Points
    136
    Par défaut
    Il faut que tu le précises une fois que tu as fini l'affichage des données de chaque requete

    Sinon il va y avoir plusieurs connections a ta BDD ouvertes ce qui va ralentir ton serveur local.

  7. #7
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2014
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2014
    Messages : 24
    Points : 16
    Points
    16
    Par défaut
    Merci de votre aide,

    peut-être n'ai-je pas fait ce qu'il faut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $list_articles = $client->query("SELECT id_articles, titre_articles FROM articles");
    while ($row_list_articles = $list_articles->fetch_assoc()) {
        echo $row_list_articles['titre_articles']; 
    }
    mysqli_close($list_articles);
    Affiche bien la liste, mais ce message d'erreur en fin :
    Warning: mysql_close() expects parameter 1 to be resource, object given in .. ligne où se trouve la fonction close.

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    mysqli_close est une fonction qui ferme la connexion, et donc prend en paramètre une référence à la connexion.
    Là tu lui passes en paramètres le résultat d'une recherche, donc il n'y a aucune chance que ça fonctionne.

    Le principe à appliquer c'est :
    1. ouvrir la connexion au début du script
    2. faire toutes les recherches, insertions et autres magouilles sur la base au cours du script
    3. fermer la connexion à la fin du script (ou après la dernière exploitation des requêtes du script)


    Au passage, si tu travailles avec mysqli en mode objet, ce n'est pas mysqli_close qu'il faut que tu appelles, mais $client->close().
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. serveur local apache, problème d'affichage
    Par ptit_seb dans le forum Apache
    Réponses: 2
    Dernier message: 08/01/2006, 23h40
  2. Insertion de données serveur local -> serveur distant
    Par Sunny dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/12/2005, 14h19
  3. apostrophe et serveur local
    Par Paulhac dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 06/11/2005, 19h23
  4. [Debutant]Impossible de se connecter au serveur local
    Par Kenji dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 24/04/2005, 19h55
  5. serveur local Easyphp
    Par Covax dans le forum Débuter
    Réponses: 3
    Dernier message: 05/04/2004, 12h37

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