[PHP] : compter le nombre de requêtes MySQL


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

[PHP] : compter le nombre de requêtes MySQL

Message le Jeu Déc 04, 2008 18:37

Bonjour,

question simple : j'ai une fonction doQuery("marequete").

je souhaiterais afficher en bas de pages : page générée en XX requetes MYSQL

comment comptabiliser une sorte de variable globale en PHP ?

fonctions.php :
Code: Tout sélectionner
$nbRequetes;

function doQuery($requete) {
mysql_query(...);
...
$nbRequetes++;
}


index.php :
Code: Tout sélectionner
include("fonctions.php");

doQuery(....);
...
doQuery(....);
....
doQuery(....);

Page générée en <?php echo $nbRequetes; ?> requetes


le probleme est que j'ai en affichage :

Page générée en requetes



Merci à vous


bgdc
WRInaute impliqué
WRInaute impliqué
 
Messages: 723
Inscription: 23 Mai 2005

Message le Jeu Déc 04, 2008 18:57

Bonjour,

il faut que tu mette ta variable en global je crois

Essaye comme ça :

Code: Tout sélectionner
function doQuery($requete) {
global $nbRequetes;
mysql_query(...);
...


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

Message le Jeu Déc 04, 2008 19:20

global doit être défini dans la fonction ?

ça me parait bizarre non.

elle ne doit pas être défini à l'extérieur de l'implémentation ?


LiFi
WRInaute impliqué
WRInaute impliqué
 
Messages: 609
Inscription: 14 Juil 2008

Message le Jeu Déc 04, 2008 19:42

ben dans la fonction ET en dehors, oui.

par exemple :

global $mavariable;
$mavariable = 0;

dofonction();

dofonction();

echo $mavariable;

et dans dofonction tu as aussi
global $mavariable;
$mavariable++;


LiFi
WRInaute impliqué
WRInaute impliqué
 
Messages: 609
Inscription: 14 Juil 2008

Message le Jeu Déc 04, 2008 19:42

ben dans la fonction ET en dehors, oui.

par exemple :

global $mavariable;
$mavariable = 0;

dofonction();

dofonction();

echo $mavariable;

et dans dofonction tu as aussi
global $mavariable;
$mavariable++;


LiFi
WRInaute impliqué
WRInaute impliqué
 
Messages: 609
Inscription: 14 Juil 2008

Message le Jeu Déc 04, 2008 19:43

ben dans la fonction ET en dehors, oui.

par exemple :

global $mavariable;
$mavariable = 0;

dofonction();

dofonction();

echo $mavariable;

et dans dofonction tu as aussi
global $mavariable;
$mavariable++;


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

Message le Jeu Déc 04, 2008 19:48

ok merci au bout de 3 fois j'ai assimilé :-)

merci de ton aide je vais tester


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

Message le Jeu Déc 04, 2008 19:57

ca marche merci bcp

c'est possible que ça ralentisse beaucoup le chargement de la page ? (+1s)


LiFi
WRInaute impliqué
WRInaute impliqué
 
Messages: 609
Inscription: 14 Juil 2008

Message le Jeu Déc 04, 2008 20:51

oui il y avait un problemes avec wri alors j'ai fais submit submit submit :-)

Non franchement une variable global ca ne va pas ralentir le script et une seconde c'est énorme :-)


Bool
WRInaute passionné
WRInaute passionné
 
Messages: 1290
Inscription: 26 Fév 2004

Message le Jeu Déc 04, 2008 21:10

c'est possible que ça ralentisse beaucoup le chargement de la page ?


Je ne sais pas comment est codé ton site, mais sur certains le fait d'afficher des éléments trop dynamiques - genre l'heure du serveur (top utile), le temps de génération, voir le nombre de requêtes SQL utilisées - empêche toute mise en cache efficace coté navigateur, le contenu étant systématiquement différent.

Après si le site ne gère pas la mise en cache coté navigateur, c'est clair que tu n'es pas à ça près.


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

Message le Ven Déc 05, 2008 7:45

Bool a écrit:
c'est possible que ça ralentisse beaucoup le chargement de la page ?

Après si le site ne gère pas la mise en cache coté navigateur, c'est clair que tu n'es pas à ça près.


en fait, je ne l'ai pas mise en place car ce n'est pas un site web mais un intranet : un CRM dont le contneu est toujours différent : dois-je le mettre en place ou non ?


rudddy
WRInaute accro
WRInaute accro
 
Messages: 2570
Inscription: 1 Aoû 2007

Message le Ven Déc 05, 2008 8:11

en tout cas grâce à cette variable globale je me rends compte à quel point mon CRM n'est pas optimisé :

sur la home page (tableaux de bord) : 14847 requêtes !!!!

je vais me pencher sur cela d'abord je pense ...


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Site Stats

  • Calcul du nombre de backlinks
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité