プログラミング勉強中の者です。 分からないコードがあったため質問します。 phpにてSQLクエリを作成していたのですが、理解できない部分があります。

PHP | プログラミング78閲覧xmlns="http://www.w3.org/2000/svg">50

ベストアンサー

0

おっと、失礼 × $query = sprintf("SELECT * FROM users WHERE email = '%s', $email); 〇 $query = sprintf("SELECT * FROM users WHERE email = '%s'", $email); ですね(汗 再度書きますが、prepare で(パラメータマーカを)渡すなら文字列部分を単引用符で括らなくていいので、それだけでもSQL文を組み立てやすいです(なので基本的に prepare/execute を推奨)。

ThanksImg質問者からのお礼コメント

分かりやすくて、とても勉強になりました。 ベストアンサーに選ばせて頂きます。

お礼日時:7/5 21:34

その他の回答(1件)

0

SQLで文字列はシングルコーテーション「'」で囲わないといけないからです。 ダブルコーテーションはシングルコーテーションを文字列とするため。 ドットはPHPの結合演算子です。 まず高度なことしない限り、mysqliよりPDOを使った方が簡単です。

回答していただいてありがとうございます。 おかげさまでやっと理解することができました! mysqliよりPDOが推奨されることが多いのですね、PDOも勉強してみます。 ありがとうございます。