Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql zwraca pusty zestaw

Oto, co robisz jako pierwszy krok. Usuń WHERE url = '$url' z całego zapytania i wydrukuj mysql_num_rows($exists) przed użyciem.

To powinno wystarczyć, aby stwierdzić, czy jest to jeden z dwóch najbardziej prawdopodobnych problemów:

  • zły adres URL, w wyniku którego nie są zwracane żadne wiersze; lub
  • zły wiersz spowodowany przez bazę danych zawierającą inne niż oczekiwano.

Na podstawie Twoich dotychczasowych komentarzy, najbardziej prawdopodobna jest ta pierwsza. Jeśli okaże się, że otrzymasz wiersz z powrotem bez where klauzula, musisz dowiedzieć się, dlaczego Twój adres URL jest nieprawidłowy. Może to być między innymi kwestia rozróżniania wielkości liter lub wypełnienia (rozmiaru).

Jeśli, jak wspomniałeś w komentarzu, like działa gdzie = nie, musimy zobaczyć Twoje dane.

Wykonaj (na poziomie bazy danych):

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

i pokaż nam dokładnie jakie jest wyjście. Podobnie, wypisz adres URL używany przez kod w następujący sposób:

print_r($url)

bezpośrednio przed wykonaniem mysql_query .

Dołącz wyniki obu tych poleceń do swojego pytania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Projekt bazy danych dla gry wieloosobowej/pojedynczego quizu

  2. Mysql - wybierz identyfikatory pasujące do wszystkich tagów

  3. Jak wykryć, czy wartość zawiera co najmniej jedną cyfrę w MySQL?

  4. Łączenie wyników dwóch oddzielnych zapytań MySQL

  5. Wdrażanie twittera i facebooka jak hashtagi