Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/06/2005, 07:35
pellagofio
 
Fecha de Ingreso: noviembre-2003
Mensajes: 383
Antigüedad: 20 años, 5 meses
Puntos: 2
Yo he creado una función para un sitio que estoy creando. Aquí lo tienes:

function genera_query($cadena,$condicion)
{
$pos=strpos($cadena,"where");

if ($pos === false)
{
$cadena=$cadena." where ";
}
if ($pos !== false)
{
$cadena=$cadena." and ";
}

$cadena=$cadena.$condicion;
return $cadena;
}

...
...
if ($idFuente!="0") //ejemplo 1
$mysql_string=genera_query ($mysql_string,"a.idFuente='$idFuente'");

if ($cuerpo!="") //ejemplo 2
$mysql_string=genera_query ($mysql_string,"a.cuerpo like '%$cuerpo%'");

if (isset($idRetenido)) //ejemplo 3
$mysql_string=genera_query ($mysql_string,"a.idRetenido='si'");
else
$mysql_string=genera_query ($mysql_string,"a.idRetenido='no'");
...
...

Te explico como funciona:
Para cada variable que tu quieras comprobar e incluir en un query tienes que varificar su valor en función de lo que a ti te interese.

if ($idFuente!="0")

si la verificación se cumple entonces llamas a la función pasandole como parametros la cadena donde quieres que se vaya construyendo el query + la cadena que quieres que se inserte en el query. La función te devolverá la cadena con tu cadena insertada.

$mysql_string=genera_query ($mysql_string,"a.idFuente='$idFuente'");

espero que te ayude.