Ver Mensaje Individual
  #9 (permalink)  
Antiguo 13/02/2009, 21:01
Avatar de pateketrueke
pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 18 años, 6 meses
Puntos: 2534
Respuesta: contar llamdas sql



Código PHP:
function query()
{
  
// contador interno (no global)
  
static $count = 0;

  if (
func_num_args() === 0)
  {
    
// sin parametros
    
return $count;
  }

  
// argumentos...
  
$test = func_get_args();

  
// consulta SQL
  
$sql = array_shift($test);

  
// argumentos extra
  
foreach ($test as $key => $val)
  {
    if ( ! 
is_numeric($val))
    {
      
// cadena
      
$val = "'$val'";
    }
    
$test[$key] = $val;
  }

  
// reemplazamos ? excepto \?
  
$sql = preg_replace('/((?<!\\\)\?)/e', 'array_shift($test);', $sql);

  
// ejecutamos SQL
  
$out = mysql_query($sql) or die(mysql_error());

  ++
$count;

  return 
$out;
} 
esta función es algo mas general, y dinámica (según yo)

permite un tipo de flexibilidad mínima, fácilmente comprensible y ampliable... supongo


ejemplos
Código PHP:
// consulta simple...
$result = query('SELECT * FROM tabla');

// consulta con argumentos
$result = query('SELECT * FROM tabla WHERE id=?', $id);

// consulta ¿mas compleja??
$result = query('SELECT * FROM users WHERE pass=? AND (nick=? OR email=?)', md5($pass), $user, $user);

echo 
'Consultas realizadas: ' . query(); 

espero les guste, suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.