前提
PHPでPDO接続をしています。データベースはMAMPのMySQLを使用しています。PHPのバージョンは7.3.1です。
SQL文の中で変数を使用したときに、その変数が文字列だった場合の取得方法がわかりません
PHP
1$sql = 'SELECT id FROM plan'; 2if(!empty($departure)) $sql .= ' WHERE departure = '.$departure;
$departureの中身は「大阪府」なのですが、文字列のためうまく表示されません。恐らくクォーテーションがついてないためかと思います。
このときの$sqlをデバックすると、「SELECT id FROM plan WHERE departure = 大阪府」です。
このため、$departureをクォーテーションで囲んでみたのですが、
PHP
1$sql = 'SELECT id FROM plan'; 2if(!empty($departure)) $sql .= ' WHERE departure = '.'$departure';
$sqlをデバックすると、「SELECT id FROM plan WHERE departure = $departure」となり、
$departureが変数ではなく文字列として認識されてしまいます。
「SELECT id FROM plan WHERE departure = "大阪府"」のように正しく取得したいのですが、どうすればいいでしょうか。
回答2件
あなたの回答
tips
プレビュー