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

Zmienna łańcuchowa PHP w klauzuli WHERE MySQL

nie otrzymujesz daty, ponieważ masz dodatkowe miejsce między cudzysłowami,

$query_getShows = "SELECT * FROM toho_shows WHERE toho_shows.show =' ". $show. " '";
                                                                    ^ HERE      ^

które zostaną następnie przetworzone na

SELECT * FROM toho_shows WHERE toho_shows.show =' gothaf '

usuń go, a zadziała

$query_getShows = "SELECT * FROM toho_shows WHERE toho_shows.show ='". $show. "'";

Na marginesie, zapytanie jest podatne na SQL Injection jeśli wartość (s ) zmiennych pochodziło z zewnątrz. Zapoznaj się z poniższym artykułem, aby dowiedzieć się, jak temu zapobiec. Używając PreparedStatements możesz pozbyć się pojedynczych cudzysłowów wokół wartości.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy w MySQL jest rozróżniana wielkość liter w nazwach kolumn i tabel?

  2. Monitorowanie baz danych za pomocą MySQL Enterprise Monitor

  3. Potrzebujesz pomocy w dostępie do bazy danych mysql za pomocą node.js

  4. Doctrine Query Language pobierz maks./najnowszy wiersz na grupę

  5. Wgrywanie dużej bazy danych mysql na AWS RDS za pomocą putty - „Serwer MySQL zniknął”