3

データベース スキーマで放射状ボタン (Y/N) を持つフォームを最もよく表現する方法をお聞きしたいのですが、そうであれば入力フィールドがあります。「今、薬を飲んでいますか?」のように。(o) はいまたは (o) いいえ。「はい」を選択すると、入力フィールドが使用可能になり、書き留める必要があります。現在、私はこの非常に単純なスキーマを持っています:

tblUser
-----------
user_id

tblAnswers
--------------
answer_id
user_id
question_id
answer


tblquestions
----------------
question_id
question_text

私が今持っているスキーマは、答えとしての複数のチェックボックス、ラジアルボタンなど、ほとんどのもので問題ないと思います。しかし、依存する入力フィールドを持つラジアルボタンについては、よくわかりません。ところで、簡単でシンプルにしたいと思います... 1 ユーザーにつき 1 つのアンケートしかありません。そして、質問は長い間変わらないでしょう。おそらく決してないでしょう。繰り返しになりますが、おそらく私の現在のスキーマは、入力依存関係のあるラジアルで機能するでしょう...答えとして「はい」の代わりに、代わりに入力フィールドの値がありますか? そのtblanswerため、(Yes の代わりに) answerlikeや. それは受け入れられるでしょうか?それともそれは悪い考えですか?どんな助けでも大歓迎です。Stress pillsNo

4

1 に答える 1

1

ラジオボタンの解決策を提供します。テーブル構造はこの回答とは無関係であるため、対処しませんが、ここにヒントを残します。正規化ルールを忘れてください。ほとんどの場合、実用的ではありません。

さて、あなたの問題について、あなたは3つの可能な結果(YES、NO、およびTEXT)を説明していますが、TEXTの存在はすでに答えがYESであることを意味するため、実際には2つ(NOとTEXT)しかありません。

したがって、「null」または「text」を送信するように入力を準備し、javascript を使用してテキスト入力を表示/非表示にし、INSERT クエリの背後にあるロジックを取得して、入力をnull(ラジオの場合) として保存する必要があるかどうかを検出する必要があります。 off) または as $_POST['foo'](無線オンの場合)。

于 2012-12-05T12:47:05.597 に答える