Código:
En la línea:<br /> <b>Warning</b>: mysql_num_rows(): supplied argument is not a valid MySQL result resource in <b>C:\Inetpub\vhosts\xn--electrodiseo-khb.es\httpdocs\Wedserver\ajax.php</b> on line <b>146</b><br /> []
Código:
Mi código:if (mysql_num_rows($query) > 0) {
ajax.php
Código PHP:
<?php
include("Connections/conexion.php");
if ($_POST["action"] == "listar")
{
// valores recibidos por POST
$vte = $_POST['telefonos'];
$ape = $_POST['apellidos'];
$name = $_POST['name'];
$dni = $_POST['dni'];
$calle = $_POST['calle'];
$movil = $_POST['movil'];
$loca = $_POST['localidad'];
if ( ! empty($vte)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.telefonos='$vte')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE telefonos='$vte' )
UNION ALL
(SELECT 2 as qnum,U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.telefonos='$vte')";
}
if ( ! empty($movil)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.movil='$movil')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE movil='$movil' )
UNION ALL
(SELECT 2 as qnum,U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.movil='$movil')";
}
if ( ! empty($dni)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.dni='$dni')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE dni='$dni' )
UNION ALL
(SELECT 2 as qnum,U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.dni='$dni')";
}
if ( ! empty($calle)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND B.calle like '%$calle%')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE calle like '%$calle%')
UNION ALL
(SELECT 2 as qnum, U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND D.calle like '%$calle%')";
}
if ( ! empty($ape)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.apellidos like '%$ape%')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE apellidos like '%$ape%')
UNION ALL
(SELECT 2 as qnum, U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.apellidos like '%$ape%')";
}
if ( ! empty($name)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.name like '%$name%')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE name like '%$name%')
UNION ALL
(SELECT 2 as qnum, U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.name like '%$name%')";
}
if ( ! empty($loca)) {
$sql ="(SELECT 0 as qnum,A.id_aviso,A.telefonos,A.telefonos3,A.movil,A.dni,A.name,A.apellidos,B.localidad,B.calle
FROM clientes A,dir_clientes B WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND B.localidad like '%$loca%')
UNION ALL
(SELECT 1 as qnum,id_aviso,telefonos,telefonos3,movil,dni,name,apellidos,localidad,calle
FROM avisos WHERE localidad like '%$loca%')
UNION ALL
(SELECT 2 as qnum, U.id_aviso,U.telefonos,U.telefonos3,U.movil,U.dni,U.name,U.apellidos,D.localidad,D.calle
FROM usuarios U,dir_usuarios D WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND D.localidad like '%$loca%')";
}
// Ordenar por
$vorder = $_POST['orderby'];
if($vorder != ''){
$sql .= " ORDER BY ".$vorder;
}
$query = mysql_query($sql);
if (mysql_num_rows($query) > 0) {
$datos = array();
while($row = mysql_fetch_array($query))
{
if($row["qnum"]==0) $style="";
if($row["qnum"]==1)$style="background-color:yellow";
if($row["qnum"]==2)$style="background-color:orange";
$datos[] = array(
'id_aviso' => $row['id_aviso'],
'telefonos' => $row['telefonos'],
'name' => utf8_encode($row['name']),
'apellidos' => utf8_encode($row['apellidos']),
'calle' => utf8_encode($row['calle']),
'localidad' => utf8_encode($row['localidad']),
'style' => $style
);
}
// convertimos el array de datos a formato json
echo json_encode($datos);
/* Tienes resultados. */
}else{
/*No tienes resultados. */
echo '[]';
}
}
?>
EDITO: Parece que el problema es de los sqls. Se podrían juntar en una sola consulta sql?con el permiso de los moderadores voy a poner la consulta en Mysql.