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

rudddy

WRInaute passionné
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:
$nbRequetes;

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

index.php :
Code:
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é
Bonjour,

il faut que tu mette ta variable en global je crois

Essaye comme ça :

Code:
function doQuery($requete) { 
global $nbRequetes;
mysql_query(...); 
...
 

rudddy

WRInaute passionné
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 occasionnel
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 occasionnel
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 occasionnel
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 occasionnel
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é
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 passionné
Bool a dit:
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 passionné
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 ...
 

Discussions similaires

Haut