Ver Mensaje Individual
  #12 (permalink)  
Antiguo 29/06/2005, 05:26
pellagofio
 
Fecha de Ingreso: noviembre-2003
Mensajes: 383
Antigüedad: 20 años, 5 meses
Puntos: 2
ferent, creo que lo he conseguido:

ferent, creo que lo he conseguido

Código PHP:
<?PHP

$result_query
=mysql_query("select Campos_a_recuperar from Tu_tabla"); //#1 Obtenemos todos los registros de la tabla de disponibles

 
while ($result=mysql_fetch_assoc($result_query))       //#2 Recorremos todos los registros obtenidos uno a uno.
  
{
    
$coinciden="si";
      while (list (
$clave$val) = each ($result))        //# Para cada registro recorremos los campos uno a uno.
       
{  
        if ( ( !empty(
$result[$clave]) ||               //# Si el campo obtenido del query NO esta vacio ...
               
!empty($_POST[$clave])                   //# ... O el campo recibido por post NO esta vacio ...
             
) &&
             ( 
$result[$clave]!=$_POST[$clave])         //# ... Y ambos campos son diferente ...
           
)
              
$coinciden="no";                          //# ... entonces no hay coincidencias.
       
}

       if (
$coinciden=="si")                            //# Si hubo coincidencias entonces...
       
{                                                //# ... muestra la información para que podamos cotejarla.
          
echo "<br><b>Coincide el registro... ";      
          echo 
"<br> \$_POST: ";
          
print_r ($_POST);                              //# Muestra el array $_POST
          
echo "<br> \$result: ";
          
print_r ($result);                             //# Muestra el array $result
       
}
  }
?>
Te explico un poco el script:

En una tabla (por ejemplo la llamaremos disponible) tienes las condiciones de busqueda que ha especificado cada cliente.
Logicamente cada cliente tendrá sus condiciones particulares, con lo que habrá registros en los que un mismo campo tengo o no un valor.
Al añadir un nuevo articulo, supongo que lo haras a traves de un formulario, eso lo envias luego via post a otro documento .php que será el que inserte el registro.
Antonces ahí mismo verificas se coinciden los criterios de los clientes que lo que has añadido.

Los pasos que realiza el script son:
.- Obtenemos los registros que tienes en tu tabla.
.- Recorremos uno a uno cada registro para ir mirando cada campo y comparandolo con lo obtenido desde el post.
.- Si en el registro y en el post existen un mismo campo que no esten vacio PERO con valor diferente, entonces ese registro NO nos vale.

Yo lo he probado con una tabla de 4 campos y me funciona.

Ya me diras como te ha ido.