Tengo una BD con 2 tablas (clientes,trabajos) relacionadas por codcliente.
Por medio de un formulario con un campo INPUT busco palabras clave en los campos descripcion o observacion de mi tabla trabajos.
Hago 2 consultas una para pintar una tabla con tipo_cliente = particulares y otra para tipo_cliente = empresa. Pero lo raro es que se repiten los datos en ambas tablas sin importar esa parte del WHERE AND cl.tipo_cliente = 'empresa'
Mis consultas son.
Código PHP:
Ver original
<?php $keyword = $_POST['keyword']; include ("abre_conexion.php"); $query1 = "SELECT cl.codcliente, tr.codtrabajo, cl.nombre, cl.apellido, cl.dni, cl.telefono, cl.email, cl.nom_fiscal, tr.estado, tr.tipo_trabajo, tr.observacion, tr.descripcion, tr.precio, tr.pagado FROM $tabla_db1 cl, $tabla_db2 tr WHERE cl.tipo_cliente = 'particular' AND cl.codcliente = tr.codcliente AND tr.observacion LIKE '%$keyword%' OR tr.descripcion LIKE '%$keyword%' GROUP BY tr.codtrabajo "; echo " Palabra de busqueda: <b>$keyword</b> <br/><br/> "; echo " <h3> Listado de Trabajos de Particulares. </h3><br/> Para ver los trabajos presione el botón <strong> ver </strong> en la parte derecha.<br/><br/> "; echo " <form action='consultarcliente3.php' method='post' > <div align='center' id='padtabla'> <table class='sortable' align='center' border='1' width='100%'> <tr align='center' bgColor='#FFBF00'> <td> <strong> Cod Trabajo </strong> </td> <td> <strong> Cod Cliente </strong> </td> <td> <strong> Nombre</strong> </td> <td> <strong> Nom. Fiscal </strong> </td> <td> <strong> DNI </strong> </td> <td> <strong> Teléfono </strong> </td> <td> <strong> Email </strong> </td> <td> <strong> Estado </strong> </td> <td> <strong> Tipo Trabajo </strong> </td> <td> <strong> Observación </strong> </td> <td> <strong> Descripción </strong> </td> <td> <strong> Presupuesto </strong> </td> <td> <strong> Pagado </strong> </td> <td> <strong> Ver Informe </strong> </td> </tr> "; echo " <tr align='center'> <td>".$registro['codtrabajo']."</td> <td>".$registro['codcliente']."</td> <td>".$registro['nombre']." ".$registro['apellido']."</td> <td>".$registro['nom_fiscal']."</td> <td>".$registro['dni']."</td> <td>".$registro['telefono']."</td> <td>".$registro['email']."</td> <td>".$registro['estado']."</td> <td>".$registro['tipo_trabajo']."</td> <td>".$registro['observacion']."</td> <td>".$registro['descripcion']."</td> <td>".$registro['precio']."</td> <td>".$registro['pagado']."</td> <td width='5%' align='center'> <a href='ver_trabajos_particular1.php?id=".$registro["codtrabajo"]."'> Ver </a> </td> </tr> "; } //CIERRA WHILE ?> </table> </div> <?php // QUERY PARA EMPRESAS $query2 = "SELECT cl.codcliente, tr.codtrabajo, cl.nom_comercial, cl.telefono, cl.email, cl.web, tr.tipo_trabajo, tr.observacion, tr.descripcion, tr.precio, tr.pagado FROM $tabla_db1 cl, $tabla_db2 tr WHERE cl.codcliente = tr.codcliente AND cl.tipo_cliente = 'empresa' AND tr.observacion LIKE '%$keyword%' OR tr.descripcion LIKE '%$keyword%' GROUP BY tr.codtrabajo "; echo " <br/> <br/><br/> <h3> Listado de trabajos de Empresas. </h3><br/> "; echo " <form action='consultarcliente3.php' method='post' > <div align='center' id='padtabla'> <table class='sortable' align='center' border='1' width='100%'> <tr align='center' bgColor='#FFBF00'> <td> <strong> Cod Trabajo </strong> </td> <td> <strong> Cod Cliente </strong> </td> <td> <strong> Nombre Comercial</strong> </td> <td> <strong> Teléfono </strong> </td> <td> <strong> Email </strong> </td> <td> <strong> Web </strong> </td> <td> <strong> Tipo Trabajo </strong> </td> <td> <strong> Observación </strong> </td> <td> <strong> Descripción </strong> </td> <td> <strong> Presupuesto </strong> </td> <td> <strong> Pagado </strong> </td> <td> <strong> Ver Informe </strong> </td> </tr> "; echo " <tr align='center'> <td>".$registro2['codtrabajo']."</td> <td>".$registro2['codcliente']."</td> <td>".$registro2['nom_comercial']."</td> <td>".$registro2['telefono']."</td> <td>".$registro2['email']."</td> <td>".$registro2['web']."</td> <td>".$registro2['tipo_trabajo']."</td> <td>".$registro2['observacion']."</td> <td>".$registro2['descripcion']."</td> <td>".$registro2['precio']."</td> <td>".$registro2['pagado']."</td> <td width='5%' align='center'> <a href='ver_trabajos_empresa1.php?id=".$registro2["codtrabajo"]."'> Ver </a> </td> </tr> "; } //CIERRA WHILE ?> </table> </div>
¿Porque se repite la busqueda por las palabras, ?es decir si hay un cliente particular con la palabra de busqueda, a veces se muestra en las 2 tablas y no deberia.