2017-02-05 5 views
-1

私はテーブル「テスト」を持っています。私は、フォーム "エントリ" を持っている特定の値を持つカテゴリーのサブカテゴリーを表示

Category  | Heading | Tests  | 
HB   |Hematology |  HB  | 
TC   |Hematology |  TC  | 
DC   |Hematology |  Neutrophil| 
DC   |Hematology |  Monocyte | 
DC   |Hematology |  Lymphocyte| 
DC   |Hematology |  Basophil | 
KFT   |Biochemistry| Urea   | 
KFT   |Biochemistry| S.Creatinine | 
KFT   |Biochemistry| S.Uric Acid |  
Lipid Profile|Biochemistry| Cholesterol | 
Lipid Profile|Biochemistry| Triglyceride | 
Lipid Profile|Biochemistry|HDL Cholesterol| 
Lipid Profile|Biochemistry|LDL Cholesterol| 
Albumin  |Biochemistry| Albumin  | 
Globulin  |Biochemistry| Globulin | 
Amylase  |Biochemistry| Amylase  | 
VDRL   | Serology | VDRL  | 
HIV   | Serology | HIV   | 
HCV   | Serology | HCV   | 
Dengue  | Serology | NS1 Antigen | 
Dengue  | Serology | IgG Antibody| 
Dengue  | Serology | IgM Antibody| 
Urine R/E |  Urine | Color  | 
Urine R/E |  Urine | Transparency| 
Urine R/E |  Urine | Reaction | 

別のテーブル "患者"

Name  | Tests  | P_no 
John  |  HB  |  1 
Krish |  HB  |  2 
Krish |  TC  |  2 
Krish |  DC  |  2 
Krish |  Urine R/E |  2 
Krish |  Dengue |  2 
Amy  |  HB  |  3 
Amy  |  TC  |  3 
Amy  |  DC  |  3 
Amy  |  KFT  |  3 
Amy  |  Albumin |  3 
Amy  |  HIV  |  3 
Amy  |  Dengue |  3 
Amy  |  Urine R/E |  3 

。患者の番号を入力するためのテキストボックスを配置して、レポート入力のテストの詳細を取得しました。

Patient Number : Textbox 

      Submit Button 

番号「3」テキストボックス内に入れてフォームを送信、それは次のように患者の数に応じて別の形態「Result.php」を表示しなければなりません。

Patient No. : 3   Patient Name : Amy 

        Tests for Hematology 

    HB     HB    Textbox 
    TC     TC    Textbox 
    DC    Neutrophil   Textbox 
       Monocyte   Textbox 
       Lymphocyte   Textbox 
       Basophil   Textbox 

       Tests for Biochemistry 

    KFT   Urea    Textbox 
       S.Creatinine   Textbox 
       S.Uric Acid   Textbox 
    Albumin   Albumin   Textbox 

       Tests for Serology 

    HIV   HIV    Textbox 
    Dengue   NS1 Antigen  Textbox 
       IgG Antibody  Textbox 
       IgM Antibody  Textbox 

       Tests for Urine 

    Urine R/E   Color   Textbox 
        Transparency Textbox 
        Reaction  Textbox 

ことが示されているように "Result.php" を取得するのに役立つ必要があります。どんな助けもありがとう。

答えて

0

シンプルaproachは、このようなのようなクエリを持っているだろう:

SELECT tests.Category, tests.Heading, tests.Tests FROM patient 
JOIN tests ON tests.Category = patient.Tests 
WHERE patient.P_no = ? 
ORDER BY tests.Heading, tests.Category 

その方法は、あなたが表示するのに必要なすべてのデータを盗んことができます。 それを表示するために、結果セットをループし、最後の見出しとカテゴリが何であるかを格納することができます。現在の要素が異なる見出しやカテゴリを持っている場合はそれを印刷し、それ以外の場合は空文字列を印刷します。

このコンセプトに役立つ希望。

データを表示する方法の一部は、データを$rowsという連想配列として取得していることを前提としています。

$lastHeading = ""; 
$lastCategory = ""; 
foreach($rows as $row) { 
    //check if there is a new heading (if so, print it and update the $lastHeading) 
    if($lastHeading !== $row['Heading']) { 
     echo $row['Heading']; 
     $lastHeading = $row['Heading']; 
    } 
    else { 
     //change this output to fit your output format 
     echo ""; 
    } 

    //check if there is a new category (if so, print it and update $lastCagetory 
    if($lastCategory !== $row['Category']) { 
     echo $row['Category']; 
     $lastCategory = $row['Category']; 
    } 
    else { 
     //change this output to fit your output format 
     echo ""; 
    } 

    //add the test name 
    echo ($row['Tests']); 
} 

実際のレイアウト/希望するhtmlに合わせてマークアップ/出力を更新する必要があります。それはテーブルかもしれない、それは他のタイプかもしれませんが、私はコンセプトが理解できることを願っています。

+0

私はその表示部分を持つことを助けてください。 – user2570995

+0

がその部分を実装する1つの方法を追加しました。 – flynorc

関連する問題