我想根据用户选择显示表单元素

时间:2015-02-16 04:31:39

标签: php

根据用户选择我想显示表单元素。用户选择class1,class6,engg。如何将所有表单元素置于一个通用表单中,知道我对于1,6类具有不同的表单和表单字段。我正在努力解决这个问题。我不知道如何解决这个问题。

我的问题是:

  1. 如果用户选择class1我有list1 form?
  2. 如果用户选择class2,我必须在一个表单下组合class1和class6。
  3. 与明智的用户一样,选择class1,class2,class6,engg。我想在一种形式下制作所有形式的元素。
  4. 我已经提供了输出样本吗?

    我的表格

    <form name="frm" method="post">
    <table align="center">
    <tr>
    <td>Name</td>
    <td><input type="text" name="txt" id="txt" required ></td><td></td>
    </tr>
    <tr>
    <td>Product</td>
    <td>
    <input type="checkbox" name="chk[]" value="class1">class1
    <input type="checkbox" name="chk[]" value="class6">class6
    <input type="checkbox" name="chk[]" value="class8">class8
    <input type="checkbox" name="chk[]" value="class10">class10
    <input type="checkbox" name="chk[]" value="class12">class12
    <input type="checkbox" name="chk[]" value="engineering">engineering
    <input type="checkbox" name="chk[]" value="technology">technology
    </td><td></td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" name="submit" value="Save"></td><td></td>
    </tr>
    </table>
    </form>
    
  5. 我的PHP值

       <?php
        if (isset($_POST['submit']))
        {
            $name    = $_POST['txt'];
            $product = $_POST['chk'];
            print_r($product);
            foreach($product as $k=> $v)
        {
        if($v=="class1")
        {
        ?>
        <form name="f1" action="" method="post">
        <p>class1
        <input type="checkbox" name="chk[]" value="allsubject">allsubject
        <input type="checkbox" name="chk[]" value="science">science
        <input type="checkbox" name="chk[]" value="maths">maths
        </p>
        <input type="submit" name="submit" value="submit">
        </form>
        <?php
        }
        if($v=="class1" && $v="class6")
        {
        ?>
        <form name="f1" action="" method="post">
        <p>class1</p>
        <input type="checkbox" name="chk[]" value="allsubject">allsubject
        <input type="checkbox" name="chk[]" value="science">science
        <input type="checkbox" name="chk[]" value="maths">maths
        <p>class6</p>
        <input type="checkbox" name="chk[]" value="allsubject">allsubject
        <input type="checkbox" name="chk[]" value="science">science
        <input type="checkbox" name="chk[]" value="maths">maths
        <input type="text" name="name" value="">Tutor Name
        <input type="text" name="name" value="">Tutor Address
        <input type="submit" name="submit" value="submit">
        </form>
        <?php
        }
        }
        }
        ?>
    
    **I want output like this:**For class1 form:
    <form name="f1" action="" method="post">
    <p>class1
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    </p>
    <input type="submit" name="submit" value="submit">
    </form>
    ****I want output like this:**For class1, class6 form:**
    <form name="f1" action="" method="post">
    <p>class1</p>
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    <p>class6</p>
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    <input type="text" name="name" value="">Tutor Name
    <input type="text" name="name" value="">Tutor Address
    <input type="submit" name="submit" value="submit">
    </form>
    

    像这样,我想根据用户选择制作表格。如果用户选择了全部三个班级(1,6,8),班级1有不同的科目,就像明智的班级6是不同的科目,英语有不同的科目如果用户选择类(1,6,8),就像明智的类(1,6)一样,现在有很多问题。如何在一个表单下组合所有表单元素并具有一个提交按钮

2 个答案:

答案 0 :(得分:0)

使用else-if,不知何故,像这样:

 <?php
    if (isset($_POST['submit']))
    {
        $name    = $_POST['txt'];
        $product = $_POST['chk'];
        print_r($product);
        foreach($product as $k=> $v){

    if($v=="class1"){
    ?>
    <form name="f1" action="" method="post">
    <p>class1
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    </p>
    <input type="submit" name="submit" value="submit">
    </form>
    <?php 
    }
    else if($v=="class1" && $v="class6"){
    ?>
    <form name="f1" action="" method="post">
    <p>class1</p>
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    <p>class6</p>
    <input type="checkbox" name="chk[]" value="allsubject">allsubject
    <input type="checkbox" name="chk[]" value="science">science
    <input type="checkbox" name="chk[]" value="maths">maths
    <input type="text" name="name" value="">Tutor Name
    <input type="text" name="name" value="">Tutor Address
    <input type="submit" name="submit" value="submit">
    </form>
    <?php 
    }}}
    ?>

答案 1 :(得分:0)

if(count($product) == 1){
    if($product[0]=='class1'){
        echo "class one form";
    }else{
        echo "class other forms";
    }  
}elseif(count($product) == 2){
    if($product[0]=='class1' && $product[1]=='class6'){
        echo "class one and class 6 form";
    }else{
        echo "class other forms";
    }
}elseif(count($product) == 3){
    if($product[0]=='class1' && $product[1]=='class6' && $product[2]=='class8'){
        echo "class 1,6,8 form";
    }else{
        echo "class other forms";
    }       
}