sql >> Base de Datos >  >> RDS >> Mysql

mysql devuelve un conjunto vacío

Esto es lo que debe hacer como primer paso. Elimina el WHERE url = '$url' de su consulta por completo e imprima mysql_num_rows($exists) antes de usarlo.

Eso debería ser suficiente para saber si es uno de los dos problemas más probables:

  • URL incorrecta que hace que no se devuelvan filas; o
  • fila incorrecta causada por una base de datos que contiene algo diferente de lo esperado.

Según sus comentarios hasta la fecha, lo primero es lo más probable. Si resulta que obtienes una fila de regreso sin el where cláusula, tendrá que averiguar por qué su URL es incorrecta. Esto puede ser un problema de distinción entre mayúsculas y minúsculas o un problema de relleno (tamaño), entre otras cosas.

Si, como mencionas en un comentario, like funciona donde = no lo hace, entonces necesitamos ver sus datos.

Ejecutar (a nivel de base de datos):

select concat('[',url,']') from sites

y muéstranos exactamente cuál es la salida. De manera similar, genere la URL utilizada por el código con algo como:

print_r($url)

inmediatamente antes de ejecutar mysql_query .

Agregue el resultado de ambos comandos a su pregunta.