sql >> データベース >  >> RDS >> Mysql

WHERE句MySQLのPHP文字列変数

    引用符の間に余分なスペースがあるため、日付が表示されません。

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

    その後、解析されて

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

    削除すれば機能します

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

    補足として、クエリはSQL Injectionで脆弱です。 値( s )変数のは外部から来ました。それを防ぐ方法については、以下の記事をご覧ください。 PreparedStatementsを使用する 値を一重引用符で囲むことはできません。




    1. 16進/バイナリデータをmysqlにインポートします

    2. SQL、空のセルの処理

    3. Railsのテーブルにどのインデックスを追加するか

    4. ArraylistのSQLitedb値をListviewに取得する方法