sql >> Databáze >  >> RDS >> Mysql

Řetězcová proměnná PHP v klauzuli WHERE MySQL

nedostanete žádné datum, protože mezi uvozovkami máte více místa,

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

který bude poté analyzován do

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

odstraňte jej a bude fungovat

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

Vedlejší poznámkou je, že dotaz je zranitelný pomocí SQL Injection pokud je hodnota (s ) proměnných pochází zvenčí. Podívejte se prosím na níže uvedený článek, kde se dozvíte, jak tomu zabránit. Pomocí PreparedStatements můžete se zbavit používání jednoduchých uvozovek kolem hodnot.




  1. pomozte mi pochopit now() pro aktuální čas mysql a jeho časová pásma

  2. Oracle PL/SQL:Příklad DBMS_SCHEDULER.CREATE_JOB

  3. Vyhledávání bez rozlišení malých a velkých písmen v Oracle

  4. Jak nastavit 0 s funkcí MAX, když je NULL?