Fonction avec le même nom, et appel de la fonction d'origine


arnaudmn
WRInaute passionné
WRInaute passionné
 
Messages: 1542
Inscription: 11 Mai 2005

Fonction avec le même nom, et appel de la fonction d'origine

Message le Dim Juil 29, 2007 9:37

Bonjour,
Je voudrais compter le nombre de requête que je fais sur chaque page. Comme j'ai des tas de scripts, qui appel la fonction mysql_query, plutot que de tous les modifier, je voudrais me faire une fonction nommée mysql_query, qui appelerait la fonction mysql_query d'origine et qui incrémenterait un compteur.
Peut-on le faire ? Et si oui comment.

Merci :)

ddpetit
WRInaute discret
WRInaute discret
 
Messages: 81
Inscription: 22 Fév 2006

Message le Dim Juil 29, 2007 9:58

Code: Tout sélectionner
<?php
function query($req)
{
   // Mysql Query
   $mysql_query = mysql_query($req);
   // Tu ajoutes ton compteur ici
   
   // On retourne $mysql_qery
   return $mysql_query;   
}

$tareq = query("SELECT * FROM XXX WHERE 1");
?>


Je ne sais pas si c'est ça que tu cherches, mais voici le début de la réponse


arnaudmn
WRInaute passionné
WRInaute passionné
 
Messages: 1542
Inscription: 11 Mai 2005

Message le Dim Juil 29, 2007 10:05

Non. Ca, c'est ce que je veux pas faire :) Pour reprendre ton code, je voudrais faire un truc du style :

Code: Tout sélectionner
function mysql_query($req) : rewirte;
{
   // Appele de la vraie fonction
   $mysql_query = inherited mysql_query($req);
   // Tu ajoutes ton compteur ici

   // On retourne $mysql_qery
   return $mysql_query;   
}


Avec a la place de "rewrite" un machin qui veut dire que ma fonction remplace la fonction mysql_query existante. Et a la place de "inherited", un machin qui dit que je veux faire appel a la fonction existante.
Le but étant de ne rien changer dans tous les scripts.
Je sais qu'on peut le faire avec des objets, mais comme mon code ne l'est pas, je cherche si on peut aussi le faire sans objet.

ddpetit
WRInaute discret
WRInaute discret
 
Messages: 81
Inscription: 22 Fév 2006

Message le Dim Juil 29, 2007 10:12

OK, désolé mais je ne pourrai te fournir une réponse plus approfondie, bonne continuation

bigjet
WRInaute discret
WRInaute discret
 
Messages: 211
Inscription: 21 Nov 2004

Message le Dim Juil 29, 2007 14:28

Je te conseille d'utiliser un éditeur comme notepad++, de rechercher le terme mysql_query et de la remplacer par ma_fonction.

Tu peux remplacer le terme automatiquement dans tous les fichiers du dossier et des sous-dossiers en cochant des options.


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 Related Links, Google Talk

  • Analyse de la classe C (adresse IP)
    Cet outil vous permet de vérifier si plusieurs sites sont hébergés sur la même classe C (adresse IP du serveur).
  • Tester l'indexation récente d'un site dans Google
    Cet outil vous permet de connaître une estimation de l'ancienneté d'un site : il fournit la date à laquelle Google l'a indexé la première fois (et la même chose pour archive.org).
  • TouchGraph
    Description du TouchGraph Google Browser (outil externe) : il s'agit d'un outil graphique permettant de visualiser des sites similaires (selon Google). On peut sauter de site en site, et se rendre compte facilement des communautés de sites, ou des nébuleuses de sites traitant du même sujet.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités