私は問題があります。私はMySQLが初めてです。これまでのところ、必要なのは単純なクエリだけで、すべてうまくいきました。しかし、今私は問題を抱えています。私は2つのテーブルを持っています:
テーブル
tarife
+----+---------------+ | id | ime_tarife | +----+---------------+ | 1 | Neka tarifa 1 | | 2 | Neka tarifa 2 | +----+---------------+
テーブル
telefoni_dodatak
+----+--------------+-----------+-------+ | id | telefoni_id | tarifa_id | price | +----+--------------+-----------+-------+ | 1 | 35 | 1 | 650 | | 2 | 35 | 2 | 700 | +----+--------------+-----------+-------+
この表の値はすべて整数です。
このような URL がwww.example.com/phones/35/
あり、35 番がページの ID を表し (3 番目のテーブルで使用されます)、それもtelefoni_id
table のように書かれていますtelefoni_dodatak
。
列tarifa_id
には table の ID 番号がありますtarife
。
url からの id に基づいて、HTML で次のような出力を取得する必要がありますwww.example.com/phones/35/
。
Neka tarifa 1 | 650
-------------------
Neka tarifa 2 | 700
私はこのクエリで試しました:
SELECT *, (SELECT ime_tarife FROM tarife WHERE id = (SELECT tarifa_id FROM telefoni_dodatak WHERE telefoni_id = :id)) AS nazivTarife FROM telefoni_dodatak WHERE telefoni_id = :id
しかし、それはうまくいきません。(nazivTarife
は定義されていません。あるべきですか?)
私は PDO を使用して:id
います。URL の 35 番です。
PS このクエリSELECT * FROM telefoni_dodatak WHERE telefoni_id = :id
は正常に機能します。価格 650 と 700 の両方を取得しています。
助けてくれてありがとう!